Maven 3 Не удалось прочитать дескриптор артефакта для
Я обновляюсь до netbeans 7, который использует встроенный maven 3. У меня есть проект с множеством модулей и модулей, содержащих другие модули. Мои другие подмодули, которые не зависят от внутренних проектов, работают с одинаковой конфигурацией. В этом случае spring -hibernate зависит от домена, который является одним из подмодулей и терпит неудачу.
В моем главном проекте есть что-то вроде этого
<modelVersion>4.0.0</modelVersion>
<artifactId>spring</artifactId>
<packaging>pom</packaging>
<groupId>${masterproject.groupId}</groupId>
<version>${masterproject.version}</version>
мой подмодуль имеет следующий def
<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}, потому что я не хочу статически ставить значение во всех подмодулях, поскольку каждый из них содержит родителя. Не уверен, что это является причиной проблемы.
Все это отлично работает с maven 2. Но с maven 3 я получаю следующую ошибку: msg
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]
Ответы
Ответ 1
У меня было это в eclipse и сделал это, что исправил его (хотя моя работа с командной строкой работала)
- удалить каталог в .m2/repostiory/....
- повторить изменения обновлений в моей среде IDE
Командная строка mvn работала, пока моя IDE не делала этого, как только я запустил ее в своей среде IDE, оба работали... очень странно.
В качестве другого варианта,
перезапуск eclipse тоже помог
Ответ 2
Одна из возможностей заключается в том, что вы указываете значения для masterproject.groupId
и masterproject.version
в profiles.xml
. Если это так, больше не поддерживается в maven3.
Ответ 3
Это сообщение, особенно это часть Failure to find
, означает, что вам не хватает описания соответствующего свойства в файле pom.xml
:
<properties>
<masterproject.version>the.appropriate.version</masterproject.version>
</properties>
И будьте осторожны: такая ошибка может вызвать много зависимых ошибок!
Ответ 4
У меня была такая же проблема, maven не любит иметь родительскую версию непостоянной (то есть свойства).
Попробуйте изменить свой родительский элемент на:
<parent>
<artifactId>spring</artifactId>
<groupId>${masterproject.groupId}</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
Очевидно, что это не должно быть 1.0-SNAPSHOT
, это просто статическая версия.
Надеюсь, что это поможет.