我尝试更改为 gwt2.4 的发布版本并遇到问题。我在我的设置中使用了多个项目。我有一个带有服务器端代码的项目,一个带有共享代码的项目,可以在不同的 gwt 项目中使用,还有一个 gwt 项目将所有内容绑定在一起。我用 Maven 构建一切。我按照此处的注释处理说明进行操作: http ://code.google.com/p/google-web-toolkit/wiki/RequestFactoryInterfaceValidation
当我编译代理和服务所在的共享项目时,会创建带有 DeobfuscatorBuilder.java 的文件夹“generated-sources\apt\”。我将这个项目的源代码作为我的主项目的依赖项,并尝试运行验证器,但此处未创建 DeobfuscatorBuilder.java。一切都可以编译,但是当我调用 requestfactory 时,我得到了错误:
com.google.web.bindery.requestfactory.server.UnexpectedException: No RequestContext for operation ZwI9iqZS626uTt_TFwRtUwPYSOE=
我想我的设置有错误,但我找不到..有人知道如何解决这个问题吗?
问候阿恩
更新:
我将此添加到我的 pom 中:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack</id>
<phase>initialize</phase>
<goals>
<goal>unpack</goal>
<!-- <goal>build-classpath</goal> -->
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.myproject.core</groupId>
<artifactId>shared</artifactId>
<version>${shared.version}</version>
<classifier>sources</classifier>
<overWrite>true</overWrite>
<outputDirectory>${project.build.directory}/com.myproject.shared</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
这会解压缩我的依赖项的源并将它们放入我的目标文件夹中。然后我补充说:
<configuration>
<sourceDirectory>target/com.fileee.shared</sourceDirectory>
</configuration>
到我的处理器插件。
这样就不必将所有项目都放在工作区中,它应该与持续集成系统一起工作。不过,如果没有安迪斯的回复,就不会想到这一点:)