Maven はどうやって gf:run のような gf で始まるゴールを理解しているのですか?Kedar より: 言いかえると、 gf:run は実際のところどのように実行されるのでしょう? ここで何が行われているのかを知るには、Maven についてプラグインとの関連で理解する必要があります。 Maven というのは、そもそも*プラグインを実行するためのフレームワーク*なのです。 Maven はプラグインを検出し、それらに関連付けられた*ゴール*を実行します。プラグインは通常、 Mojo と呼ばれるコンポーネントとして実装されています。
(余談ながら、我々は GlassFish 用の Maven プラグイン作成に着手すべきですね。現在のところ、これに関する明確なプランはありません。ざっくりとした見通しではありますが、 GlassFish Maven プラグインができれば、それで ANT のタスクを置き換えることができるのではないかと思います。これは我々にとっても良い機会です) ともあれ、いくつかのプラグインは既に作成され、 v3 のソースの "build" モジュール内に含まれています。こうしたプラグインについて理解するには、次のようなコマンドを実行します。 work-space 内にあるプラグインなら、どれでも同じ手法が使えます。 mvn -o help:describe -DgroupId=org.glassfish.build -DartifactId=maven-glassfish-plugin -Dfull=true コマンドを実行すると、次のような出力を確認できます: ... =============================================== Goal: 'assemble' =============================================== Description: Creates a glassfish distribution image. Implementation: com.sun.enterprise.build.DistributionAssemblyMojo Language: java Bound to Phase: package ... 上記の出力は、ビルドの package フェーズ において assemble というゴール を達成するため、 Maven のフレームワークがこのプラグインおよび関連するMojoを選択し、実行したことをあらわしています。 日本語翻訳: Kana 英文 (翻訳したバージョン: 4) |