Плагин Maven версии работает только во второй раз - PullRequest
0 голосов
/ 09 апреля 2020

Мы установили плагин maven version следующим образом:

<version>1.0.0</version>
<properties> 
  <myVersion>1.2.3</myVersion>
</properties>

<plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>versions-maven-plugin</artifactId>
            <version>2.7</version>
            <configuration>
                <newVersion>${myVersion}</newVersion>
                <generateBackupPoms>false</generateBackupPoms>
            </configuration>
            <executions>
                <execution>
                    <phase>initialize</phase>
                    <goals>
                        <goal>set</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

Однако созданный артефакт имеет первоначальную версию (1.0.0) и только после первого запуска он обновляется. Я думаю, это потому, что когда плагин обновляет pom, уже слишком поздно, так как файл читается командой mvn package. Есть ли какая-то хитрость, чтобы избежать выполнения двух последующих команд maven?

1 Ответ

1 голос
/ 09 апреля 2020

Вы пытались запустить плагин версии через командную строку, например:

mvn versions:set -DnewVersion=1.0.3-SNAPSHOT

Документация версий: set также говорит:

Описание:

Устанавливает версию текущего проекта и на основе этого изменения распространяет это изменение на любые дочерние модули по мере необходимости.

Атрибуты:

  • Требуется выполнение проекта Maven.
  • Выполняется как подключаемый модуль.
  • Выполняется только прямым вызовом.
  • Цель является поточно-ориентированной и поддерживает параллельные сборки.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...