2012-01-13 6 views
0

Mavenは次のデフォルトのライフサイクルの段階があります。Mavenのは、GoogleのApp Engineでのライフサイクルを構築し、Googleのウェブツールキット

validate - validate the project is correct and all necessary information is available 
compile - compile the source code of the project 
test - test the compiled source code using a suitable unit testing framework. These tests should not require the code be packaged or deployed 
package - take the compiled code and package it in its distributable format, such as a JAR. 
integration-test - process and deploy the package if necessary into an environment where integration tests can be run 
verify - run any checks to verify the package is valid and meets quality criteria 
install - install the package into the local repository, for use as a dependency in other projects locally 
deploy - done in an integration or release environment, copies the final package to the remote repository for sharing with other developers and projects. 

MavenのGWTプラグインをサポートしています。GWT:コンパイル

のmaven GAEプラグインがサポートされています。GAEを:

を展開します

しかし、下の2つはデフォルトのMavenライフサイクルの一部ではありません(少なくともpomから)。それで、ビルドマシンでは、何を実行するべきですか?

現在、「mvn test gwt:compile gae:deploy」を実行しています。そうですか?

答えて

3

多くのプラグインは、一般的には役に立たない「奇妙な」ことをするため、デフォルトのライフサイクルにはフックしません。たとえば、GWTコンパイラには長い時間がかかります。

あなたはexecutionブロック(details)を使用し、相に、このようなプラグインを追加する場合:

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

これはcompileフェーズ中にプラグインの目標compileを呼び出します。

GWTプラグインの場合、phaseはオプションです。 compileを呼び出すと、プラグインは正しいことを行います。

deployは少し残っています:パッケージが早過ぎました。test以降、installより後である必要があります。したがってdeployの場合は、さまざまな段階で試すことができます。 mvn test gae:deploy

+1

gwt:compileは、コンパイル段階ではなく、デフォルトでプリパッケージ段階にバインドされることに注意してください(テスト段階の後に実行されるように) –