Настроить maven-release-plugin для отправки изменений версии в репозиторий git?

#git #maven #release #maven-release-plugin #maven-scm-plugin

#git #maven #выпуск #maven-release-plugin #maven-scm-plugin

Вопрос:

При выпуске артефакта с помощью maven-release-plugin изменения, внесенные в версию артефакта, являются локальными и не передаются в удаленный репозиторий git.

Ниже приведена конфигурация, которую я использовал для maven-release-plugin:

 <configuration>
    <goals>pre-integration-test</goals>
    <preparationGoals>package</preparationGoals>
    <releaseProfiles>releases</releaseProfiles>
</configuration>
  

Я провел некоторое исследование и обнаружил, что мне нужно добавить следующую зависимость maven-scm-plugin , но не уверен, как настроить ее вместе с плагином maven release.

Комментарии:

1. Зависимость от maven-scm-plugin не нужна, потому что maven-release-plugin обрабатывает это сам. Почему вы изменили конфигурацию maven-release-plugin по умолчанию?

2. Каким-то образом это необходимо, без этого maven release не отправляет изменения, выполненные на pom.xml , в git, как следствие, продолжает выпускать версию моментального снимка.

3. Какую версию maven-release-plugin вы используете? Похоже, вы используете очень старый .. пожалуйста, разместите ссылку на свой проект….

4. Я использую версию 2.5.3 maven-release-plugin, ниже я описал, как я решил проблему

5. Как выглядит ваша scm-часть в вашем pom?

Ответ №1:

Я решил проблему, добавив следующую зависимость к зависимостям плагина:

  <dependencies>
    <dependency>
       <groupId>org.apache.maven.scm</groupId>
       <artifactId>maven-scm-provider-gitexe</artifactId>
       <version>1.11.2</version>
    </dependency>
 </dependencies>
  

Теперь maven отправляет изменения, внесенные в pom.xml после запуска mvn release:prepare и mvn release:perform

Комментарии:

1. Я думаю, вы хотели сказать «к зависимостям плагина».