Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法将客户端包中的类与GWT一起使用_Java_Gwt - Fatal编程技术网

Java 无法将客户端包中的类与GWT一起使用

Java 无法将客户端包中的类与GWT一起使用,java,gwt,Java,Gwt,我试图使用包中声明的myType类 com.mycompany.myproject位于 com.mycompany.myproject.client,但我发现以下错误 在编译时: [ERROR]行[X]:导入com.mycompany.myproject.myType不能为空 决心 如果我尝试运行托管浏览器,我会得到: [ERROR]行[X]:没有可用于该类型的源代码 com.mycompany.myproject.myType;你忘了继承一个必需的文件了吗 模块 有什么想法吗?这个错误意味着G

我试图使用包中声明的myType类 com.mycompany.myproject位于 com.mycompany.myproject.client,但我发现以下错误 在编译时:

[ERROR]行[X]:导入com.mycompany.myproject.myType不能为空 决心

如果我尝试运行托管浏览器,我会得到:

[ERROR]行[X]:没有可用于该类型的源代码 com.mycompany.myproject.myType;你忘了继承一个必需的文件了吗 模块


有什么想法吗?

这个错误意味着GWT编译器找不到您的类。GWT编译器只能找到项目的.GWT.xml文件引用的类

这里已经解释过了:
编译器首先扫描应用程序的module.gwt.XML。然后,模块XML可以复制或继承其他模块XML。模块还可以声明希望使哪些包对编译器可见

不仅要将•.java文件放在编译路径上,还必须使用模块XML机制。这是因为并非所有的子包都应该是可转换的,例如一个servlet组件,它补充了客户端的预期组件。

项目结构:

  • com.mycompany.service
  • com.mycompany.myproject
    • 客户
    • 服务
    • myproject.gwt.xml
默认情况下,源包是“client”,它与 gwt.xml文件。如果要添加或更改源目录,则必须编辑gwt.xml

1) 例如,您希望使gwt包“com.my~ny.p~ct.service”可用。 在gwt.xml文件中添加

路径属性值如“./”、“”-将不起作用

2) 如果您想提供“com.my~ny.service”软件包

在com.mycompany中创建模块(gwt.xml文件),
您拥有点源目录的位置

并继承默认的gwt用户模块

我遇到了类似的问题,我设法找到了一个在这种情况下可能对您有所帮助的链接。

正确的链接是rustyshelf是正确的。例如,如果要使用gwt gears API,需要将以下内容添加到.gwt.xml文件中: