GWT。 Maven的。 GWT模块 在项目资源或资源未找到(GWT. Maven. GW

2019-07-03 19:52发布

我有一个maven多模块项目。 这一个模块(编译为中.jar )只包含域对象,这将在客户端和服务器端(我添加此使用.jar为依赖于其他的我模块)。

我知道,GWT模块,其中将从共享使用的对象.jar ,还必须有源文件编译成功。 于是,我就添加到我pom.xml两个:

        <resources> 
            <resource>
              <directory>src/main/java/<path></directory> 
              <includes> 
                <include>**/*.java</include> 
                <include>**/*.gwt.xml</include> 
              </includes> 
            </resource> 
        </resources>  

 <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>gwt-maven-plugin</artifactId>
    <versionRange>[${gwt.version}]</versionRange>
    <goals>
        <goal>resources</goal>
    </goals>
 <plugin>

但造成.jar不包含GWT模块源(即gwt.xml )。 域类的所有来源被加入以及(在根目录下.jar ),但ModuleName.gwt.xml不。

在哪里的问题? 谢谢。

Answer 1:

如果您.gwt.xml文件中src/main/resources/ ,那么它不会得到,如果你指定复制src/main/java/作为资源路径...

你或许应该忽略<resource>部分,让GWT插件包括罐中的源或至少有两个部分,一个用于.gwt.xml文件( src/main/resources或者你把它),一个用于源代码(如你现​​在)。

干杯,



Answer 2:

我今天解决此错误,所以我只是发表我的解决办法:

多模块的GWT项目正在建设使用Maven插件GWT需要像pom.xml中的条目:

  <modules>
        <module>../theothermodule</module>
  </modules>

为了编译。



Answer 3:

这个错误有多种解释。 检查表:

  • 如果你引用一个GWT模块,你需要指向*.gwt.xml点标记文件,而无需将文件扩展名。 例如com.example.ThirdPartycom/example/ThirdParty.gwt.xml模块
  • 导入第三方模块,添加<inherits name="com.example.ThirdParty" />*.gwt.xml文件
  • 所述ThirdParty.gwt.xml应该包含一个或多个source指向可翻译的代码元素。 例如<source path='shared' />
  • 在所有可翻译的代码ThirdParty.jar需要包括明文*.java源。 例如com/example/shared/Widget.classcom/example/shared/Widget.java两者都存在
  • ThirdParty.jar是在classpath

笔记:

  • 如果ThirdParty GWT模块没有切入点,它并不需要与GWT编译器编译
  • GWT编译器不需要额外的配置,包括ThirdParty模块,只要它的罐子是在类路径和你的*.gwt.xml继承ThirdParty.gwt.xml ; 这同样适用于GWT Maven插件


文章来源: GWT. Maven. GWT Module not found in project sources or resources