Maven和GWT(以及Eclipse) - 它真的有用吗?

sdo*_*oca 10 java eclipse gwt maven

在过去的几天里,我一直在尝试使用gwt-maven-plugin在Eclipse中创建/运行一个项目,并继续遇到障碍(请参阅我以前的一些问题).我喜欢使用Maven来做我的构建,但是由于使用Maven的复杂性,我正在考虑使用Ant构建路径.

那里有人配置/运行良好吗?它只是我还是比它应该更难?

sdo*_*oca 5

在尝试让事情很好地融合在一起之后,我感到非常沮丧,这就是我对我"有用"的设置."Works"意味着我可以通过调整来创建,运行和调试GWT项目,但它不是最优雅的解决方案.

创建项目

许多步骤与Pascal在这篇文章中的答案相同:Maven GWT 2.0和Eclipse.我会列出我的清楚.

在Eclipse(Helios)中安装了m2eclipse和GWT Eclipse插件:

使用gwt-maven-plugin原型创建一个新的Maven项目

修改pom.xml:

  • 设置<gwt.version property>为2.0.4(需要与GWT Eclipse插件版本相同)
  • 设置<maven.compiler.source><maven.compiler.target>属性为1.6
  • <goal>generateAsync</goal> 从gwt-maven-plugin <plugin>配置中删除
  • 将maven-war-plugin添加到pom.xml

maven-war-plugin示例:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.0.2</version>
    <configuration>
    <warSourceDirectory>war</warSourceDirectory>
        <webXml>src/main/webapp/WEB-INF/web.xml</webXml>
    </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

更新项目属性:

  • Google - > Web Toolkit,选中"使用Google Web Toolkit"框,并确保选中"使用默认SDK(GWT-2.0.4)".

在项目上运行Maven"gwt:eclipse"目标(设置环境并启动配置)

将*.launch文件复制到workspace.metadata.plugins\org.eclipse.debug.core.launches

重启Eclipse

编译/运行项目

我创建了一个运行配置mvn clean compile gwt:run.gwt:run是将资源和lib jar复制到war目录中所必需的.但是,它不会将web.xml从src/main/webapp/WEB-INF复制到war/WEB-INF /中.所以,我必须手动复制该文件.

如果我想运行我的应用程序,上面的步骤就足够了.但是,如果我想调试应用程序,我会通过选择先前复制.launch文件时创建的调试配置中的Google"Web应用程序"配置来启动它.此配置允许调试(断点等),无需任何其他配置或需要远程调试.