2012-02-20 8 views
2

通常、ビルド時にMavenプラグインを使用するには、POMの<build>セクションに明示的にアクティブ化する必要があります。"暗黙的な"プラグイン - Mavenビルドは、POMに記載されていないのに確かなテストを経てテストを実行するのはなぜですか?

しかし、最小限のPOM(「ビルド」セクションにプラグインなし)を実行してMavenビルドを実行すると、Mavenはデフォルトでコンパイルして確実にテストを実行するなどいくつかのプラグインを実行します。

これはどのように機能しますか? 「デフォルト」プラグインの内部リストがありますか?または、これは「スーパーPOM」で定義されていますか?私はスーパーPOMを検索しようとしましたが、( "Maven:The Complete Reference"の)例では、surefireプラグインがリストされていません。

答えて

2

ビルド時にアクティブになるプラグインのリスト(他に明示的に宣言されていないプラグインのリスト)は、プロジェクトのパッケージ化によって異なります。たとえば、jarwarプロジェクトの場合、デフォルトのライフサイクルはtestのフェーズを含み、これはデフォルトでsurefire:testにバインドされています。詳細は、hereを参照してください。

関連する問題