0

次の問題についてサポートをお願いします。

3つのプロジェクトA、B、Cについて考えてみます。プロジェクトBとCはスタンドアロンモジュールです(結果としてjarになります)。これらのプロジェクトは、Bが独自に生きることができます。プロジェクトAは、ある意味で特定のものであり、モジュール(プロジェクトB、Cの場合)の親として動作する必要があります。プロジェクトAをビルドするときは、B、Cもビルドする必要があります。Hovewer、プロジェクトAには独自のソースがあり、ビルドするときに、jarファイルも作成する必要があります。

私の知る限り、これはMavenの世界ではどういうわけか矛盾しています。jarタイプで宣言しながら、モジュールを管理するために親pomが必要です。

これまでのところ、これを管理する方法に関するリソースを見つけることができなかったので、うまくいけば、皆さんはいくつかのアイデアを持ち出すでしょう。前もって感謝します。

4

1 に答える 1

3

これは、単一責任原則の違反です。プロジェクトAはアグリゲーターであるか、ビルド後にアーティファクトが発生する必要があります。したがって、プロジェクトAのソースをプロジェクトDに除外し、BとCをDに依存させる必要があります。

Aに現在含まれているソースへの依存関係を継承することを主張する場合は、別のプロジェクトEを作成することをお勧めします。階層は次のようになります。

A
+-D
+-E
  +-B
  +-C

その場合、新しいアグリゲーターEはDに依存する必要があります。

于 2013-01-09T08:14:53.613 に答える