Использование плагина выпуска maven в неинтерактивном режиме

Я не понимаю, как номер версии в файле pom и системные свойства, такие как -DdevelopmentVersion=2.0-SNAPSHOT и -DreleaseVersion=1.2, работают, когда maven запускается в неинтерактивном режиме.

Когда я запускаю mvn –B release:prepare –Dtag=1.2 -DdevelopmentVersion=2.0-SNAPSHOT -DreleaseVersion=1.2 для pom.xml с <version>1.0-SNAPSHOT</version> и <packaging>jar</packaging>, в полученном файле jar используется номер версии pom, а не версия командной строки, то есть xxx-1.0-SNAPSHOT.jar .

Является ли это ожидаемым поведением, и если да, то какой смысл указывать версии в командной строке?


person Steve W    schedule 08.01.2014    source источник


Ответы (2)


Вы должны знать, что release:prepare является первой частью процесса выпуска. После этого вам нужно указать release:perform, который проверит созданный тег из системы контроля версий и запустит сборку для артефакта, который действительно будет выпущен.

person khmarbaise    schedule 08.01.2014

Итак, я нашел свою ошибку: перед запуском примера release:prepare в моем вопросе я выполнил dryRun, т.е. используя option-DdryRun=true . Это создало файл release.properties, который использовался последующими командами release:prepare, пока он не был очищен с помощью release:clean.

person Steve W    schedule 09.01.2014