Плагин Maven Versions, рекурсивное обновление родителя в многомодульном проекте
У меня есть следующая структура проекта Maven
pom.xml (parent)
pom.xml (extends parent, aggregates modules)
|
|--pom.xml (extends aggregate)
Теперь, когда я mvn install
обновленная родительская версия и запуск mvn versions:update-parent
В агрегатном проекте я хотел бы, за исключением того, что сначала обновляется родительский агрегат, а агрегат наследует версию, а затем его родительские модули обновляются для обновленного агрегата, снова наследуя версию. Это имело бы смысл с тем фактом, что агрегатные проекты просто последовательно собирают все модули одной командой maven.
Однако это не относится к плагину Maven Versions. Пример просто обновляет агрегатный родительский объект, но оставляет его модули (наследующие его) нетронутыми. Это ошибка в плагине? Как решить эту проблему?
Я знаю, что могу бежать mvn versions:set
в совокупности, чтобы успешно обновить модули тоже, но в этом случае я должен указать версию (по сравнению с использованием последнего родителя). Я знаю, что мог бы также сделать сценарий, чтобы понять это, но это грязно.
Итак, как мне правильно обновить версию с помощью Maven Version Plugin, где проект использует наследование, агрегацию и охватывается несколькими репозиториями, а родительский POM используется как единственный источник объявления версии?
1 ответ
После
mvn versions:2.1:update-parent
Вы можете попробовать команду обновить дочерние версии (как указано здесь)
mvn versions:update-child-modules