我们决定在1周前在我们的应用程序中使用gwt模块。我们使用gwt-maven-eclipse
三重奏,我们已经配置了阶段和目标。我们还在进行上下文部署以减少开发和测试时间。
BUT;
当我们申请package
或tomcat:deploy
时,gwt模块为re-compiling
(包括未更改的模块)。
<set-property name="user.agent" value="gecko1_8"></set-property>
<extend-property name="locale" values="en_UK"></extend-property>
我已经在这里设置了这些属性以加快编译时间,但这是不我想要的......
我还在eclipse
中配置了 maven生命周期映射,以便在任何资源发生变化时触发gwt:compile process-resources resources:testResources
。但它阻止了eclipse,这也无助于编译时间。
这是gwt-maven-plugin
pom.xml
配置
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<version>2.3.0</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
<!--
Plugin configuration. There are many available options, see
gwt-maven-plugin documentation at codehaus.org
-->
<configuration>
<runTarget>A.jsp</runTarget>
<runTarget>B.jsp</runTarget>
<hostedWebapp>${webappDirectory}</hostedWebapp>
</configuration>
</plugin>
有什么想法可以帮助我吗?
答案 0 :(得分:5)
gwt-maven-plugin尝试(很难)避免在代码未更改时重新编译模块,但即使这需要一些时间(仍然少于重新编译模块;不幸的是,如果它检测到模块需要要重新编译,它总计GWT编译时间。)
如果您知道,则不需要gwt:compile
,您可以将-Dgwt.compiler.skip=true
传递给Maven构建,以跳过目标并继续“运行”以前编译的代码。同样,如果您知道需要 gwt:compile
,则可以通过-Dgwt.compiler.force=true
来绕过“最新检查”。