【问题标题】:GWT compiler can't find sources of depending module in IntelliJ IDEAGWT 编译器在 IntelliJ IDEA 中找不到依赖模块的来源
【发布时间】:2012-04-28 10:16:39
【问题描述】:

我正在使用 IDEA 117.216

如果CrazyCoder看到这个问题就好了:)

你们如何引用另一个模块以便 GWT 编译器看到它?

当我说模块时,我指的是 IntelliJ IDEA 术语中的模块。

这是我的情况。我有中间项目(GAE + GWT + RequestFactory)。现在我在我的项目中创建了 Android 模块。这个想法是它将使用C2DM 并通过 RequestFactory (RF) 与服务器通信。

所以我很自然地在我的项目中创建了第三个模块,并将所有 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。

你如何解决这个问题?我真的不想有两个编译步骤:首先使用源构建共享类 jar,然后构建引用该 jar 的 GWT 项目等......

【问题讨论】:

    标签: java gwt intellij-idea requestfactory gwt-compiler


    【解决方案1】:

    您必须让.java 文件在模块中。 GWT 编译器适用于它们,而不适用于 .class 文件。

    【讨论】:

    • 我知道。在我的情况下,我该如何在 IDEA 中做到这一点?
    【解决方案2】:

    这更像是IDEA-67661,负责的开发人员解释了为什么会这样:

    IDEA 10 确实包含来自 modules 的类路径源根 仅具有 GWT 构面。这确保不需要的目录不是 添加到类路径中。您还需要在模块中有一个 GWT Facet 在其中启用特定于 GWT 的完成和检查...

    【讨论】:

    • AWESOME!!! 将 GWT facet 添加到该模块就可以了。你摇滚,伙计! Спасибо большое :)
    猜你喜欢
    • 2012-03-16
    • 1970-01-01
    • 2017-06-24
    • 1970-01-01
    • 2014-02-10
    • 2016-09-30
    • 1970-01-01
    • 2012-12-14
    • 1970-01-01
    相关资源
    最近更新 更多