Плагин выпуска Maven с зависимостями моментальных снимков классификатора из командной строки

Я пытаюсь запустить плагин выпуска maven из командной строки в пакетном режиме для многомодульного проекта, который имеет зависимости, развернутые в репозиторий maven с помощью классификатора.

Release:prepare работает правильно, когда он не находится в пакетном режиме, и запрашивает все неразрешенные зависимости моментальных снимков, включая зависимости с классификатором, и выпуск завершается успешно.

Когда я смотрю на файл release.properties, я вижу...

Обычные зависимости, определенные как

project.rel.groupIdXYZ:artifactIdXYZ=2.0.3.4
project.dev.groupIdXYZ:artifactIdXYZ=2.0.3.4-SNAPSHOT

Зависимости классификатора, определенные как

dependency.groupIdABC:artifactIdABC.release=2.0.3.4
dependency.groupIdABC:artifactIdABC.development=2.0.3.4-SNAPSHOT

без фактического идентификатора классификатора.

Сейчас пробую через командную строку с командной строкой вроде...

mvn --batch-mode -P release,nexus -Dtag=rm2.0.3.4 -Dproject.rel.groupIdXYZ:artifactIdXYZ=2.0.3.4 -Dproject.dev.groupIdXYZ:artifactIdXYZ=2.0.3.4-SNAPSHOT -Ddependency.groupIdABC:artifactIdABC.development=2.0.3.4-SNAPSHOT -Ddependency.groupIdABC:artifactIdABC.release=2.0.3.4 -DreleaseVersion=2.0.3.4 -DdevelopmentVersion=2.0.3.4-SNAPSHOT -DdryRun=true release:prepare

и получить

Can't release project due to non released dependencies :
groupIdABC:artifactIdABC:jar:classifierIdABC:2.0.3.3-SNAPSHOT:compile

Я проверил, что артефакты классификатора находятся в моем локальном репозитории maven, нашем корпоративном центральном репозитории maven. Я попытался указать артефакты классификатора как

-Dproject.rel.groupIdABC:artifactIdABC:jar:classifierIdABC=2.0.3.4

и все та же ошибка.

Любые указатели на возможность запуска этого из командной строки будут оценены.


person user1827802    schedule 15.11.2012    source источник
comment
Привет, я понятия не имею об этом в данный момент. Но вы можете попытаться поднять это как ошибку/вопрос в Maven JIRA (jira.codehaus.org/browse /MRELEASE для версии 2 плагина) для выпуска плагина.   -  person Jan    schedule 30.04.2013
comment
Почему в сообщении об ошибке 2.0.3.3, а во всех остальных фрагментах 2.0.3.4? Вы не предоставляете информацию о том, как разрешить зависимость моментальных снимков 2.0.3.3.   -  person Sven Amann    schedule 26.09.2013
comment
Просто чтобы быть уверенным: вы используете версию 2.0 maven-rlease-plugin или более новую?   -  person Robert Scholte    schedule 26.01.2014


Ответы (2)


Что, если вы установите для свойства allowTimestampedSnapshots значение true? Он все еще выдает ошибку?

person FoGh    schedule 30.01.2014

maven-release-plugin требует, чтобы все версии зависимостей не были SNAPSHOT... по очевидным причинам. Должен быть финальный релиз.

Если вы знаете, что для ваших зависимостей доступны версии, отличные от SNAPSHOT (вы ранее выпустили их), вы можете использовать version-maven-plugin для автоматического обновления pom.xml.

mvn versions:use-latest-versions -DallowSnapshots=false -Dincludes=com.my.*

И чтобы релиз-плагин не жаловался на незафиксированное изменение в pom.xml...

 mvn release:prepare ... -DcheckModificationExcludeList=pom.xml
person Andre    schedule 11.02.2015