1

经过一些尝试,我无法使托管模式与 maven 一起使用。我的 pom.xml 如下,我使用的是标准的 maven 结构:

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>gwt-maven-plugin</artifactId>
            <version>2.4.0</version>
            <executions>
                <execution>
                    <goals>
                        <goal>compile</goal>
                        <goal>i18n</goal>
                        <goal>generateAsync</goal>
                    </goals>
                </execution>
            </executions>

            <configuration>
                <draftCompile>true</draftCompile>
                <strict>true</strict>
                <inplace>false</inplace>
                <runTarget>project.html</runTarget>
                <style>${gwt.style}</style>
                <i18nMessagesBundle>com.domain.client.i18n.Messages</i18nMessagesBundle>
                <i18nConstantsBundle>comdomain.client.properties.ClientProperties</i18nConstantsBundle>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.1.1</version>
            <executions>
                <execution>
                    <phase>compile</phase>
                    <goals>
                        <goal>exploded</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

有任何想法吗?

4

3 回答 3

2

<outputDirectory>我注意到build 和 <module>gwt-maven-plugin 配置下缺少两个标签。

另请参考 - http://code.google.com/p/google-web-toolkit/source/browse/trunk/samples/dynatablerf/pom.xml

 <build>
    <!-- Generate compiled stuff in the folder used for development mode -->
    <outputDirectory>${project.build.directory}/${project.build.finalName}/WEB-INF/classes</outputDirectory>

    <plugins>

      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.4</version>
        <configuration>
          <source>1.6</source>
          <target>1.6</target>
        </configuration>
        <dependencies>
          <!-- Need to run the RF Validation tool. This works on both the command-line
               and in Eclipse, provided that m2e-apt is installed. -->
          <dependency>
            <groupId>com.google.web.bindery</groupId>
            <artifactId>requestfactory-apt</artifactId>
            <version>${gwtVersion}</version>
          </dependency>
        </dependencies>
      </plugin>

      <!-- GWT Maven Plugin-->
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>gwt-maven-plugin</artifactId>        
        <version>2.5.0</version>
        <dependencies>
          <dependency>
            <groupId>com.google.gwt</groupId>
            <artifactId>gwt-user</artifactId>
            <version>${gwtVersion}</version>
          </dependency>
          <dependency>
            <groupId>com.google.gwt</groupId>
            <artifactId>gwt-dev</artifactId>
            <version>${gwtVersion}</version>
          </dependency>
        </dependencies>
        <!-- JS is only needed in the package phase, this speeds up testing -->
        <executions>
          <execution>
            <phase>prepare-package</phase>
            <goals>
              <goal>compile</goal>
              <goal>i18n</goal>
              <goal>generateAsync</goal>
             </goals>
          </execution>
        </executions>

        <!-- Plugin configuration. There are many available options,
             see gwt-maven-plugin documentation at codehaus.org -->
        <configuration>
          <draftCompile>true</draftCompile>
          <strict>true</strict>
          <inplace>false</inplace>
          <!-- URL that should be automatically opened in the GWT shell (gwt:run). -->
          <runTarget>project.html</runTarget>
          <style>${gwt.style}</style>
          <i18nMessagesBundle>com.domain.client.i18n.Messages</i18nMessagesBundle>
          <i18nConstantsBundle>comdomain.client.properties.ClientProperties</i18nConstantsBundle>         
          <!-- Ask GWT to create the Story of Your Compile (SOYC) (gwt:compile) -->
          <compileReport>true</compileReport>
          <module>youR.gwt.ModuleName</module>
          <logLevel>INFO</logLevel>
          <copyWebapp>true</copyWebapp>
        </configuration>
      </plugin>
于 2013-01-07T14:40:51.950 回答
2

这是我今天在演示文稿中使用的 POM,如果您想比较它们,它可以工作:https ://github.com/checketts/gwt-spring-demo/blob/master/pom.xml 。

于 2012-06-29T01:07:41.243 回答
1

尝试添加这些配置条目:

<warSourceDirectory>${basedir}/src/main/webapp</warSourceDirectory>                          
<webappDirectory>${project.build.directory}/${project.build.finalName}</webappDirectory>
<hostedWebapp>${basedir}/src/main/webapp</hostedWebapp>

最后一个可能是真正需要的

于 2012-06-27T12:55:18.253 回答