Неожиданное поведение при обновлении версий плагина 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.