0

私は現在、耳と戦争の2つのモジュールを宣言する親pomを持っています。耳は戦争に依存しています(そして、グループ/アーティファクトIDとパッケージタイプで戦争への依存を宣言します)。

親pomレベルからパッケージ化する場合、リアクターは両方のアーティファクトを取得し、予想どおりに戦争を適切に耳にパッケージ化します。ただし、耳のプロジェクトpomからパッケージ化する場合(両方のプロジェクトで親pomを指す要素を宣言しているにもかかわらず)、耳は戦争アーティファクトを見つけることができません。

耳のレベルでパッケージ化すると、Mavenは親に正しく到達することを知っていますが、アーティファクトを取得するために親に含まれるさまざまなモジュールまで反復処理しませんか?

ありがとう :)

4

2 に答える 2

0

それがMavenの仕組みです。大丈夫です。依存関係を解決するとき、Maven は、reactor、ローカル リポジトリ、リモート リポジトリの順にそれらを探します。したがって、親プロジェクト レベルからビルドを実行する場合、両方のプロジェクトがリアクターにあるため、EAR は簡単に WAR を選択できます。(具体的には、親子関係ではなく、モジュールであるということです。) ただし、EAR モジュールを単独でビルドすると、reactor はローカル リポジトリだけでなく、リモート リポジトリにも WAR を提供できません。WAR モジュールをローカル リポジトリにインストールしmvn installてから EAR をビルドしようとすると、ローカル リポジトリを使用して WAR アーティファクトが検出されます。

于 2012-04-11T19:35:11.893 に答える
0

親構造が壊れているように聞こえます.EARがWARに依存している場合、それは子モジュールでなければなりません。

于 2012-04-11T16:09:37.077 に答える