2

のようなものを含む Maven (マルチモジュール) プロジェクトがありますIAction。このプロジェクトでは、さまざまなアクションの約 50 の実装を実装しました。各アクションはMyAction.javaMyAction.propertiesファイルで構成されます。

Java の SPI (java.util.spi) を使用して、実行時にすべての実装をロードします。Actionこれはすべてうまく機能しますが、50 個の jar になるように、それぞれを 1 つの jar にパッケージ化したいと考えています。

これを達成するための良い方法は何でしょうか? アクションごとにサブモジュールを作成したくはありません。これには多くのメンテナンスが必要です。

4

1 に答える 1

1

モジュールを構築するための追加のアーティファクトを作成するために、Mavenアセンブリ プラグインを使用できます。ただし、これらのアーティファクトをビルドするだけではない場合は、これらのアーティファクトを作成したら、デプロイ キューに追加する必要があることに注意してください。これは、たとえば を使用して実現できますbuild-helper-maven-plugin

ただし、50 要素を超える反復に関しては、独自の特殊なプラグインを作成することを検討することをお勧めします。別のプラグインの繰り返しを可能にする追加のプラグインがありますが、これは POM を爆破します。したがって、ビルドが非常に具体的である場合は、このタスクに特化した個別のプラグインを作成することを検討してください。これは、XML ではなく純粋な Java で行うことができ、思ったほど難しくありません。ドキュメントがあり、Maven のデフォルト API があります。また、要件を達成する方法については、指定されたプラグインのソース コードを確認できます。

于 2014-07-03T11:27:09.943 に答える