Неожиданное поведение при обновлении версий плагина maven

Цель versions:update-properties производится следующий вывод:

10:52:25,255 INFO  - --- versions-maven-plugin:2.7:update-properties (default-cli) @ release-plugin-test-new-bo ---
10:52:32,605 INFO  - artifact de.continentale.muv:coutil: checking for updates from nexus
10:52:32,666 INFO  - Subincremental version changes allowed
10:52:32,682 INFO  - Updated ${coutil.version} from 7.0.0-SNAPSHOT to 7.0.1-RC0002

Я устанавливаю параметры -DallowIncrementalUpdates=false, а также -DallowMinorUpdates=false а также -DallowMajorUpdates=false, что отражено в строке "Допускаются изменения субинкрементной версии". Тем не менее, версия была обновлена ​​путем изменения третьего номера в версии.

Это поведение является неожиданным и также не идемпотентным (следующий прогон заменяет 7.0.1-RC0002 от 7.0.1).

Я попытался выяснить, почему это происходит из документации, а также из Javadoc и исходного кода, но затерялся где-то в сравнении версий Maven.

Может ли кто-нибудь просветить меня? Это ошибка, или мне нужно настроить вещи по-другому, чтобы избежать обновлений третьего номера?

1 ответ

Некоторая отладка приводит к выводу, что для 7.0.0-SNAPSHOT, цель versions:update-properties с параметрами, как указано выше, делает следующее:

  • Создайте верхнюю границу, увеличив третье число (в этом случае верхняя граница 7.0.1-SNAPSHOT).
  • Ищите самую большую версию ниже этой границы (для Maven 7.0.1-RC0002 меньше чем 7.0.1-SNAPSHOT).

ИМХО, код не работает должным образом, потому что на самом деле происходит постепенное изменение номера версии, хотя я установил для соответствующего свойства значение false.

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