2012-04-18 15 views
4

私が理解しているところでは、プラグインの目標をライフサイクルフェーズに付けることができます。 デフォルトフェーズが定義されていない場合、それは何ですか?目標のMavenデフォルトフェーズは?

答えて

5

私の経験上、それはプラグインの目標によって異なります。たとえば、maven-assembly-pluginのassembly:singleゴールにはデフォルトフェーズがリストされません。 source:jar-no-forkの目標は、デフォルトでpackageフェーズにバインドされます。通常、各目標には、ドキュメントの属性セクションのデフォルトフェーズがリストされています。

もう1つの方法は、ソースコード(例:source:jar-no-fork mojo)です。クラスヘッダーコメントブロックで@phaseを探します。

最後に、あなたが選択したパッケージ(jar、war、ear、pomなど)は、デフォルトでライフサイクルフェーズに目標をバインドします。 Mavenの本はlifecycles and bound goalsについて説明しています。 maven-coreアーティファクトには、コンフィグレーションファイル/src/main/resources/META-INF/plexus/artifact-handlers.xmlが含まれています。

2

目標のデフォルトフェーズは、使用しているプラ​​グインによって異なります。たとえば、appassembler-maven-pluginはパッケージフェーズにバインドされています。しかし、他のプラグインは、どの段階にも縛られていません。そのような場合は、自分でフェーズを定義する必要があります。

関連する問題