我正在使用IDEA 117.216
如果CrazyCoder看到这个问题,那就太好了。)
你们如何引用另一个模块,以便GWT编译器看到它?
当我说模块时,我指的是IntelliJ IDEA术语中的模块。
这是我的情况。我有中间项目(GAE + GWT + RequestFactory)。现在我在我的项目中创建了Android模块。这个想法是它将使用C2DM并通过RequestFactory(RF)与服务器通信。
很自然地,我在我的项目中创建了第3个模块并移动了所有RF代理和接口,因此我可以从GWT / GAE模块和Android模块中引用它。
Android模块喜欢它,但GWT编译器不喜欢它。它找不到我移动到“共享”模块的类。给我错误,如:
[ERROR] Errors in 'file:/C:/work/sideprojects/courierapp/src/com/blah/courierApp/client/admin/AdminPage.java'
[ERROR] Line 77: No source code is available for type com.blah.shared.proxies.OrderProxy; did you forget to inherit a required module?
[ERROR] Line 81: No source code is available for type com.blah.shared.factories.AdminRequestFactory; did you forget to inherit a required module?
我需要注意, SharedClasses模块是作为GWT模块的依赖项添加的。但GWT仍然不知道其来源的位置。
在我看来,它是 this bug 。
你是如何解决这个问题的?我真的不想有两个编译步骤:首先使用source构建共享类jar,然后构建引用该jar等的GWT项目......
答案 0 :(得分:14)
更像是IDEA-67661,负责任的开发人员解释了为什么会这样:
IDEA 10确实包含来自模块的类路径源根 只有GWT方面。这可以确保不需要的目录 添加到类路径中。您还需要在模块中使用GWT Facet 在其中启用GWT特定的完成和检查......
答案 1 :(得分:0)
您必须在模块中提取.java
个文件。 GWT编译器可以使用它们,而不是.class
个文件。