我正在尝试将项目从 gwt-2.6.1 迁移到 gwt-2.7。但是,我遇到了一个问题。在 .gwt 中的一个继承模块中.xml由于某种原因被 gwt 编译器忽略。所以我在 .gwt.xml 中有这样的东西:
<source path="">
...
<exclude name="servlet/**"/>
</source>
但是在使用带有 gwt-maven-plugin 的 maven 进行编译时,我不断收到这样的错误:
Tracing compile failure path for type 'my.module.servlet.SomeClass'
[INFO] [ERROR] Errors in 'jar:file:/path/to/jar/servlet/SomeClass.java'
[INFO] [ERROR] Line 15: No source code is available for type javax.servlet.ServletContext; did you forget to inherit a required module?
如您所见,gwt 尝试编译 servlet 目录中的文件,该文件在 .gwt.xml 中被排除在外。可能是什么原因?gwt-2.6.1 没有这样的问题。
编辑:我发现(在gwt-maven-plugin配置中)
<configuration>
<incrementalCompileWarnings>true</incrementalCompileWarnings>
</configuration>
是导致问题的原因(没有它,项目编译)。然而,问题仍然存在。
我遇到了同样的问题,
<source path="plugin/campaign/rpc">
<exclude name="**/impl/**"/>
</source>
现在在 GWT 2.7 中给我错误,impl 下的 java 文件没有被忽略。事实证明,该文件夹有一个错别字,实际上被称为"Impl",所以从 2.7 开始,排除现在似乎不区分大小写。
我不知道这是否是你的问题,但它解决了我的问题。