Java 未能执行目标gwt maven插件:2.5.1:gwt模块名称在项目源或资源中找不到(在eclipse中工作,但maven安装失败)

Java 未能执行目标gwt maven插件:2.5.1:gwt模块名称在项目源或资源中找不到(在eclipse中工作,但maven安装失败),java,maven,gwt,Java,Maven,Gwt,我有一个多模块设置,其中一个子模块是GWT,所有其他子模块都是非GWT。这在eclipse中非常有效,在eclipse中我可以启动GWT图形和非GWT应用程序。然而,当我执行“mvn清洁安装”时,我在基于GWT的子模块中遇到以下错误 我复习了类似的问题,但没有帮助(因为我不理解,因为我的pom没有资源) 下面是非GWT代码的pom文件(基本上这个子模块有几个DTO,GWT客户端和所有其他非GWT模块都将使用这些DTO) 4.0.0 口琴 ,我在基于gwt的子模块中添加了以下行,但没有成功

我有一个多模块设置,其中一个子模块是GWT,所有其他子模块都是非GWT。这在eclipse中非常有效,在eclipse中我可以启动GWT图形和非GWT应用程序。然而,当我执行“mvn清洁安装”时,我在基于GWT的子模块中遇到以下错误

我复习了类似的问题,但没有帮助(因为我不理解,因为我的pom没有资源)

下面是非GWT代码的pom文件(基本上这个子模块有几个DTO,GWT客户端和所有其他非GWT模块都将使用这些DTO)


4.0.0
口琴
,我在基于gwt的子模块中添加了以下行,但没有成功

  <configuration>
        <module>com.harmonia.cbm.basecommon.Basecommon</module>
<inplace>true</inplace>
<force>true</force>
</configuration>

com.harmonia.cbm.basecommon.basecommon
真的
真的
最后,我打开了Basecommon.jar文件(包含所有DTO的非gwt子模块),它没有任何gwt.xml文件(它只有.class文件)。
任何提示都值得欣赏(我对GWT非常陌生,对maven来说只有几个月大)

正如您所怀疑的,问题是您的GWT.xml文件不在JAR中。正如您可能在另一个问题中所读到的,这是因为它位于
src/main/java
中,而不是声明为

解决方案:

  • 将资源(*.java和*.gwt.xml文件,如果使用ClientBundle或UiBinder,可能还有其他文件)声明为

  • 使用
    gwt:resources
    gwt:sourcejar

  • 或者使用构建一个源jar,并将其作为依赖项(以及“普通”jar)添加到GWT项目中:

    
    ${project.groupId}
    (这显然是不完整的)



    顺便说一句,除非您完全理解其含义,否则不要使用
    true
    。我还没有找到那处房产的真正用途。

    @Broyer:谢谢你的详细回答。这有帮助。我可以要求您提供一个关于如何使用gwt:resources或gwt:sourcejar的链接(pom.xml)。我发现了这一点,但它没有关于如何在pom.xml中使用它的示例(可能是太基本了/obvous)。在
      <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.harmonia</groupId>
        <artifactId>cbm</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>
    <artifactId>base-common</artifactId>
    <name>BASE-COMMONS</name>
    <description>BASE-COMMONS</description>
    <packaging>jar</packaging>
     </project>
    
      <module>
     <inherits name='com.google.gwt.user.User'/>
       <source path='dto' />
    
      <configuration>
            <module>com.harmonia.cbm.basecommon.Basecommon</module>
    <inplace>true</inplace>
    <force>true</force>
    </configuration>