GWT没有源代码可用于类型[userClassName]

时间:2013-05-28 14:07:39

标签: maven gwt gwt-compiler

好的,这个错误今天早上就开始了。我有一个名为“snmp-jobs”的Maven项目,以前只用于传递SNMP通信。由于最近完成的更改,此项目现在也包含DTO个类。此外,现在有两个主要的子包:sharedserver,其中第一个包含那些DTO和第二个服务器端代码。此项目还有.gwt.xml文件,指定:

<source path="shared"/>

另一个名为“mib”的项目引用“snmp-jobs”并在客户端代码中使用这些DTO类。更确切地说,有问题的类称为MibRow。

当我编译GWT项目时,它会报告错误:

  
    

没有源代码可用于“rs.jp.jobs.shared.MibRow”类型;你忘了继承一个必需的模块吗?

  

我理解这是非常常见的错误。据我所知,GWT无法找到MibRow类的源代码,也无法继续进行GWT编译。这是真的?

我已经尝试了所有的书籍建议,但到目前为止,他们都没有解决过这个问题。任何人都可以给我一个关于下一步尝试的提示吗?

非常感谢!

更新:

我已经使用-Dgwt.logLevel=DEBUG从控制台运行编译,并且有两行突出显示:

Loading inherited module 'rs.jp.jobs.Jobs'
[INFO]          Module location: USER_DIR/.m2/repository/rs/jp/jobs/snmp-jobs/1.0.4-SNAPSHOT/snmp-jobs-1.0.4-SNAPSHOT.jar!/rs/jp/jobs/Jobs.gwt.xml

Errors in 'rs/jp/mib/client/commands/mib/report/DataResponse.java'
[INFO]          Line 10: No source code is available for type rs.jp.jobs.shared.MibRow; did you forget to inherit a required module?

显然,GWT设法找到Jobs模块但不知道shared包: - /

1 个答案:

答案 0 :(得分:1)

好的,我已成功解决了这个问题。我在XML项目中错过了pom.xml的{​​{1}}块:

snmp-jobs

希望这会对某人有所帮助:)。