延迟绑定失败

时间:2012-05-02 18:38:48

标签: gwt dependency-injection guice gin

我的申请是:

java.lang.RuntimeException: Deferred binding failed for 'com.mygwtapp.client.gin.ClientAppGinjector' (did you forget to inherit a required module?)

在EntryPoint内的这段代码上:

private final ClientAppGinjector injector = GWT.create(ClientAppGinjector.class);

可能是什么问题?

以下是完整错误日志:

java.lang.RuntimeException: Deferred binding failed for 'com.mygwtapp.client.gin.ClientAppGinjector' (did you forget to inherit a required module?)
    at com.google.gwt.dev.shell.GWTBridgeImpl.create(GWTBridgeImpl.java:53)
    at com.google.gwt.core.client.GWT.create(GWT.java:97)
    at com.mygwtapp.client.MainEntryPoint.<init>(MainEntryPoint.java:79)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
    at com.google.gwt.dev.shell.ModuleSpace.rebindAndCreate(ModuleSpace.java:465)
    at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:375)
    at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200)
    at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:525)
    at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363)
    at java.lang.Thread.run(Thread.java:722)

4 个答案:

答案 0 :(得分:7)

我在运行时遇到了同样的错误消息。当我尝试“谷歌&gt; GWT编译”时,堆栈跟踪帮助我更好。我的问题是服务接口使用了一个不是可序列化的类。

答案 1 :(得分:1)

在“.gwt.xml”文件中,添加以下行:

<inherits name="com.google.gwt.inject.Inject"/>

答案 2 :(得分:1)

我有同样的问题,我解决了lom添加以下库:

  • javax.inject.jar
  • guice-assistedinject-3.0.jar
  • aopalliance.jar

答案 3 :(得分:-1)

我遇到了同样的问题。我的布尔对象的getter方法名为getBooleanObject(),而不是isBooleanObject()。类JsonEncoderDecoder查找名为isBooleanObject()的方法,找不到他,编译失败。 (gwt 2.8.0)