Плагин установки версии Maven не устанавливает родительскую версию в дочернем модуле
Пока я пытался автоматизировать обновления версий всех компонентов проекта, я не мог решить эту проблему. Версии:set plugin/command заменяет почти все версии pom, но не версии родительского pom (другого проекта), определенные в родительской части самого pom.xml.
<parent>
<groupId>com.test.app</groupId>
<artifactId>helloWorld</artifactId>
<version>3.19.0-SNAPSHOT</version>
<relativePath />
</parent>
<groupId>com.test.app.child</groupId>
<version>3.21.0-SNAPSHOT</version>
<artifactId>helloWorldChild</artifactId>
<name>${project.groupId}::${project.artifactId}</name>
<packaging>pom</packaging>
Как видите, две версии разные. Это после того, как я выполнил следующую команду:
mvn versions:set -DgroupId=com.test.app.* -DartifactId=* -DoldVersion=* -DnewVersion=3.21.0-SNAPSHOT
Ожидаемый результат состоит в том, что обе версии всех версий - 3.21.0-SNAPSHOT вместо 3.19.0-SNAPSHOT. Есть ли возможность это исправить?
1 ответ
Ваша версия и группа должны исходить от родителя, они не должны быть установлены в дочернем, только артефакт должен быть установлен в дочернем.
<parent>
<groupId>com.test.app</groupId>
<artifactId>helloWorld</artifactId>
<version>3.19.0-SNAPSHOT</version>
<relativePath />
</parent>
<artifactId>helloWorldChild</artifactId>
<name>${project.groupId}::${project.artifactId}</name>
<packaging>pom</packaging>