web-dev-qa-db-ja.com

maven3のアーティファクト記述子の読み取りに失敗しました

埋め込み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]
11
user373201

私はこれをEclipseに持っていて、これを修正して修正しました(コマンドラインビルドは機能しましたが)

  1. .m2/repostiory/...のディレクトリを削除します。
  2. iDEで更新の依存関係を再実行します

mvnコマンドラインは機能しましたが、IDEは機能しませんでした。一度実行すると、IDE両方が機能しました。非常に奇妙です。

別のオプションとして、Eclipseを再起動することも役立つようでした

8
Dean Hiller

私は同じ問題を抱えていました、mavenは非定数(つまりプロパティ)の親バージョンを持つのが好きではありません。

親要素を次のように変更してみてください。

<parent>
    <artifactId>spring</artifactId>
    <groupId>${masterproject.groupId}</groupId>
    <version>1.0-SNAPSHOT</version>
</parent>

明らかに、それは1.0-SNAPSHOTである必要はなく、静的バージョンである必要があります。

お役に立てれば。

0
Markoorn

そのメッセージ、特にFailure to findの部分は、pom.xmlファイルに適切なプロパティの説明がないことを意味します。

<properties>
    <masterproject.version>the.appropriate.version</masterproject.version>
</properties>

そして注意してください:そのようなエラーは多くの依存エラーを引き起こす可能性があります!

0
Gangnus

1つの可能性は、masterproject.groupIdmasterproject.versionprofiles.xmlの値を指定していることです。もしそうなら、それは もはやサポートされていません maven3にあります。

0
Raghuram