埋め込みMaven3を使用するnetbeans7にアップグレードします。多くのモジュールと他のモジュールを含むモジュールを含むプロジェクトがあります。内部プロジェクトに依存しない他のサブモジュールは、同じ構成で正常に動作します。この場合、spring-hibernateはサブモジュールの1つであるドメインに依存し、失敗します。
私のメインプロジェクトはこのようなものです
<modelVersion>4.0.0</modelVersion>
<artifactId>spring</artifactId>
<packaging>pom</packaging>
<groupId>${masterproject.groupId}</groupId>
<version>${masterproject.version}</version>
私のサブモジュールには次の定義があります
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>spring</artifactId>
<groupId>${masterproject.groupId}</groupId>
<version>${masterproject.version}</version>
</parent>
<artifactId>spring-hibernate</artifactId>
<packaging>pom</packaging>
<dependency>
<groupId>${masterproject.groupId}</groupId>
<artifactId>domain</artifactId>
</dependency>
次の$ {masterproject.groupId}、$ {masterproject.version}を使用しています。これは、各サブモジュールに親が含まれているため、すべてのサブモジュールに静的な値を設定したくないためです。これが問題の原因であるかどうかはわかりません。
これはすべてMaven2で正常に機能しますが、Maven3では次のエラーメッセージが表示されます
Failed to read artifact descriptor for com.merc:domain:jar:1.0-SNAPSHOT: Failure to find ${masterproject.groupId}:MavenMasterProject:pom:${masterproject.version} in http://repository.springsource.com/maven/bundles/release was cached in the local repository, resolution will not be reattempted until the update interval of com.springsource.repository.bundles.release has elapsed or updates are forced -> [Help 1]
私はこれをEclipseに持っていて、これを修正して修正しました(コマンドラインビルドは機能しましたが)
mvnコマンドラインは機能しましたが、IDEは機能しませんでした。一度実行すると、IDE両方が機能しました。非常に奇妙です。
別のオプションとして、Eclipseを再起動することも役立つようでした
私は同じ問題を抱えていました、mavenは非定数(つまりプロパティ)の親バージョンを持つのが好きではありません。
親要素を次のように変更してみてください。
<parent>
<artifactId>spring</artifactId>
<groupId>${masterproject.groupId}</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
明らかに、それは1.0-SNAPSHOT
である必要はなく、静的バージョンである必要があります。
お役に立てれば。
そのメッセージ、特にFailure to find
の部分は、pom.xml
ファイルに適切なプロパティの説明がないことを意味します。
<properties>
<masterproject.version>the.appropriate.version</masterproject.version>
</properties>
そして注意してください:そのようなエラーは多くの依存エラーを引き起こす可能性があります!
1つの可能性は、masterproject.groupId
でmasterproject.version
とprofiles.xml
の値を指定していることです。もしそうなら、それは もはやサポートされていません maven3にあります。