Неинтерактивно обновлять версию проекта Maven до версии выпуска

Я хочу обновить версию моего проекта Maven до версии выпуска, соответствующей текущей версии снимка. Например 1.2-SNAPSHOT должен стать 1.2, Другими словами, я просто хочу удалить -SNAPSHOT суффикс из версии. Я хочу сделать это неинтерактивным способом, чтобы мой инструмент CI мог выполнить это действие.

Я знаю, что это может быть сделано либо с maven-release-plugin или maven-versions-plugin и, возможно, другие плагины. У меня есть предпочтение maven-versions-plugin потому что он хорошо обрабатывает агрегаторные проекты.

Оба плагина запрашивают новую версию, но позволяют указать версию в командной строке. Как предоставить новую версию относительно текущей версии снимка? Как сказал, я просто хочу удалить -SNAPSHOT часть.

Итак, чтобы быть ясно,

  • Я только хочу обновить версию проекта, а не все остальные вещи, которые предлагает плагин релиза.
  • Я не хочу указывать номер версии, а просто обновляю версию до "чего бы то ни было раньше" -SNAPSHOT".

3 ответа

С помощью инструмента CI вы сможете редактировать тег непосредственно в POM.

Это фрагмент моего небольшого проекта.

<modelVersion>4.0.0</modelVersion>
<groupId>com.organization</groupId>
<artifactId>pdf_tiff_conversion</artifactId>
<version>1.0-SNAPSHOT</version> // Edit this tag
<packaging>jar</packaging>

Maven-release-plugin делает именно то, что вы просите - и может быть запущен в неинтерактивном режиме для выполнения следующих шагов:

Постройте проект

Пометьте код

Внесите изменения в свой SCM

изменить версию на выпускную

построить снова

вставьте версионную банку / войну / ухо /zip в хранилище по вашему выбору

пометить и нажать

установить номер версии для следующей версии снимка

и т.п.

Все сделано автоматически.

Используйте version-maven-plugin:

mvn org.codehaus.mojo:versions-maven-plugin:2.1:set -DnewVersion=1.2 -DgenerateBackupPoms=false

Это, к сожалению, заставляет вас указывать номер версии (1.2), это не лишит -SNAPSHOT, но это гораздо более простое решение, чем плагин релиза.

Другие вопросы по тегам