我有一个java应用程序,本周我尝试添加GWT。 尝试在GWT Designer中查看我的类时出现此错误:
Error loading module(s).
GWT Designer can't load a module because of error in gwt.xml module description, incorrect resource which requires processing with GWT generator or by some other configuration error.
Please check your $project_dir/.gwt/.gwt-log for GWT-specific errors (not GWT Designer errors).
This log has the following error messages:
[ERROR] Errors in 'file:/C:/Temp/essd/Projecto/anacom/src/main/java/anacom/shared/dto/OutputObterModoDto.java'
[ERROR] Line 8: No source code is available for type anacom.domain.Modo; did you forget to inherit a required module?
[ERROR] Errors in 'file:/C:/Temp/essd/Projecto/anacom/src/main/java/anacom/shared/dto/TelemovelDetalhadoDto.java'
[ERROR] Line 8: No source code is available for type anacom.domain.Modo; did you forget to inherit a required module?
[ERROR] Errors in 'file:/C:/Temp/essd/Projecto/anacom/src/main/java/anacom/shared/exception/TelemovelModoException.java'
[ERROR] Line 17: No source code is available for type anacom.domain.Modo; did you forget to inherit a required module?
[ERROR] Errors in 'file:/C:/Temp/essd/Projecto/anacom/src/main/java/anacom/shared/dto/OutputObterModoDto.java'
[ERROR] Line 8: No source code is available for type anacom.domain.Modo; did you forget to inherit a required module?
[ERROR] Unable to find type 'anacom.presentationserver.client.AnacomGWT'
[ERROR] Hint: Previous compiler errors may have made this type unavailable
[ERROR] Hint: Check the inheritance chain from your module; it may not be inheriting a required module or a module may not be adding its source path entries properly
具有该错误的所有文件都导入了类anacom.domain.Modo。该类是一个枚举,只包含这个:
package anacom.domain;
public enum Modo {
LIGADO, DESLIGADO, OCUPADO, SILENCIO
}
此外,在gwt.xml中,我继承了模块并定义了入口点类。 我花了最近三天试图解决这个问题。如果你能帮助我,我将不胜感激。很抱歉,如果这是一个新手问题,但在我通过网络搜索时,我还没有找到解决方案。非常感谢你!
答案 0 :(得分:1)
以下是该问题的一些可能性。
<source path="domain">
使您的枚举序列化,即
public enum Modo实现了Serializable {
LIGADO,DESLIGADO,OCUPADO,SILENCIO
}
或
public enum Modo implements IsSerializable {
LIGADO, DESLIGADO, OCUPADO, SILENCIO
}
4)生成默认构造函数,即
public Modo () {
}
答案 1 :(得分:1)
我设法找到了解决方案。不是我的预期,但它解决了这个问题。
我把枚举类移到了另一个包中; DTO和例外在共享的包下,然后在各自的文件夹中。我在共享下创建了一个域文件夹。然后我改变了我的dml和我所有的其他类(并且相信我,这是一个本地和远程运行的大项目),所以引用的枚举就是这个。
所以我认为枚举和DTO的解决方案是相同的包。我还在模块文件中包含了域文件夹。
感谢大家帮助我。
答案 2 :(得分:0)
您知道gwt应用程序包含两个或三个主要部分,即客户端,服务器和共享包。通常,客户端应用程序不会根据设计原则引用服务器包中的类型。您也可以考虑这个细节。
对于此示例,请在服务器端程序包中键入“anacom.domain.Modo”。