gwt-maven-plugin如何在另一个模块pom.xml中添加源jar

时间:2012-05-22 05:45:32

标签: gwt maven

我的应用程序有2个模块,一个是jar,另一个是gwt war。在jar模块(非gwt)pom.xml中,我添加了

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-source-plugin</artifactId>
      <version>2.1.2</version>
      <executions>
         <execution>
           <phase>package</phase>
           <goals>
              <goal>jar-no-fork</goal>
           </goals>
         </execution>
      </executions>
     </plugin>
   </plugins>
</build>

和als-admin-viewer-core-1.0.0-sources.jar已成功创建。 然后在webapp(一个gwt应用程序)pom.xml中,我想使用这个jar,在段中,我添加

 <plugin>
   <groupId>org.codehaus.mojo<groupId>
   <artifactId>gwt-maven-plugin</artifactId>
   <version>2.4.0</version>
   <dependencies>
      <dependency>
    <groupId>hk.gov.ehr.service.tch.als</groupId>
    <artifactId>als-admin-viewer-core</artifactId>
    <version>1.0.0</version>    
   </dependency>
   <dependency>
    <groupId>hk.gov.ehr.service.tch.als</groupId>
    <artifactId>als-admin-viewer-core</artifactId>
    <version>1.0.0</version>
    <classifier>sources</classifier>
   </dependency>
  </dependencies>
  <execution>
  <phase>prepare-package</phase>
  <goals> 
    <goal>compile</goal>
  </goals>
  </executions>
........

但是当我为这个项目运行maven install(als-admin-viewer-webapp)时,出错了 没有源代码可用于类型hk.gov.ehr.service.tch.als.admin.viewer.core.LogSearchCriteria;你忘了继承一个必需的模块吗? 被提示。

有什么问题?!!

我甚至尝试添加

<compileSourcesArtifacts>
  <compileSourcesArtifact>hk.gov.ehr.service.tch.als:als-admin-viewer-core</compileSourcesArtifact>  <!-- groupId:artifactId -->
</compileSourcesArtifacts>

in

<configuration> 

gwt-maven-plugin的部分,但它仍然无济于事!!

1 个答案:

答案 0 :(得分:1)

我认为您忘记在jar模块中创建“gwt.xml”文件并在主gwt.xml(gwt maven模块内)中继承它。

请看  http://mojo.codehaus.org/gwt-maven-plugin/user-guide/library.html

有关详细信息(“将通用JAR用作GWT库”一节)。

另请注意:如果您使用maven-source-plugin附加源代码,您的源代码将随Web应用程序一起分发。如果您使用“compileSourcesArtifacts”,则可以避免这种副作用。