Я сталкиваюсь с необходимостью изменить версию проекта агрегатора maven и двух имеющихся у него модулей, используя versions:set
. Один из вариантов использования не работает, и я не знаю, пропускаю ли я что-то или этот вариант использования, в частности, не поддерживается плагином. Версии дочерних модулей не обновляются до 1.4.0, поскольку они соответствуют версиям someother-parentartifact-1
и someother-parentartifact-2
. Мне не удалось воспроизвести проблему, используя версию, отличную от 1.4.0
, поэтому я предположил, что плагин каким-то образом запутался.
Накопитель:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mygroupId</groupId>
<artifactId>my-aggregator</artifactId>
<version>1.4.0-RC1</version>
<packaging>pom</packaging>
<properties>
<maven.deploy.skip>true</maven.deploy.skip>
</properties>
<modules>
<module>module-1</module>
<module>module-2</module>
</modules>
</project>
Модуль 1:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mygroupId</groupId>
<artifactId>module-1</artifactId>
<version>1.4.0-RC1</version>
<packaging>jar</packaging>
<parent>
<groupId>com.myanothergroupId</groupId>
<artifactId>someother-parentartifact-1</artifactId>
<version>1.4.0</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>com.myanothergroupId</groupId>
<artifactId>some-lib</artifactId>
</dependency>
</dependencies>
</project>
Модуль 2:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mygroupId</groupId>
<artifactId>module-2</artifactId>
<version>1.4.0-RC1</version>
<packaging>jar</packaging>
<parent>
<groupId>com.myanothergroupId</groupId>
<artifactId>someother-parentartifact-2</artifactId>
<version>1.4.0</version>
<relativePath/><!-- lookup parent from repository -->
</parent>
<dependencies>
(bunch of dependencies)
</dependencies>
</project>
Некоторые идеи:
- Родительские проекты обоих модулей не являются агрегатором. Это сделано намеренно и не подлежит изменению, если нет других вариантов.
- Значение
maven.deploy.skip
не меняет результат.
- Я видел это только тогда, когда устанавливаемая версия (
1.4.0
) совпадает с версией родителей дочерних модулей.
- Используемая команда была:
mvn versions:set -DgenerateBackupPoms=false -DnewVersion=1.4.0 -DprocessAllModules
.
- Также пытался использовать
update-child-modules
. Безуспешно.
Некоторые журналы:
[INFO]
[INFO] ----------< com.mygroupId:my-aggregator >----------
[INFO] Building my-aggregator 1.4.0-RC1 [1/3]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- versions-maven-plugin:2.7:set (default-cli) @ my-aggregator ---
[INFO] Searching for local aggregator root...
[INFO] Local aggregation root: C:\somedirectory\my-aggregator
[INFO] Processing change of com.mygroupId:my-aggregator:1.4.0-RC1 -> 1.4.0
[INFO] Processing com.mygroupId:module-1
[INFO] Updating project com.mygroupId:module-1
[INFO] from version 1.4.0-RC1 to 1.4.0
[INFO] Updating project com.mygroupId:module-1
[INFO] from version 1.4.0 to 1.4.0-RC1
[INFO]
[INFO] Processing com.mygroupId:module-2
[INFO] Updating project com.mygroupId:module-2
[INFO] from version 1.4.0-RC1 to 1.4.0
[INFO] Updating project com.mygroupId:module-2
[INFO] from version 1.4.0 to 1.4.0-RC1
[INFO]
[INFO] Processing com.mygroupId:my-aggregator
[INFO] Updating project com.mygroupId:my-aggregator
[INFO] from version 1.4.0-RC1 to 1.4.0
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for my-aggregator 1.4.0-RC1:
[INFO]
[INFO] module-1 .................................... SKIPPED
[INFO] module-2 .................................. SKIPPED
[INFO] my-aggregator ......................................... SUCCESS [ 3.445 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 23.637 s
[INFO] Finished at: 2019-07-04T17:02:37+02:00
[INFO] ------------------------------------------------------------------------
Заранее спасибо за помощь.