[
https://issues.apache.org/jira/browse/MNG-7840?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17744627#comment-17744627
]
jycr commented on MNG-7840:
---------------------------
the parent POM that we use in the majority of our projects has changed
governance. As a result, the groupId and artifactId changed.
The POM relocation feature warns users to think about changing the groupId and
artifactId and it also helps to ensure the proper functioning of the goals:
*
[versions:parent-updates-report|https://www.mojohaus.org/versions/versions-maven-plugin/parent-updates-report-mojo.html]
*
[versions:update-parent|https://www.mojohaus.org/versions/versions-maven-plugin/update-parent-mojo.html]
> Maven pom relocation do not work with parent pom
> ------------------------------------------------
>
> Key: MNG-7840
> URL: https://issues.apache.org/jira/browse/MNG-7840
> Project: Maven
> Issue Type: Bug
> Components: Artifacts and Repositories, Dependencies
> Affects Versions: 3.9.2
> Environment: Apache Maven 3.9.2
> (c9616018c7a021c1c39be70fb2843d6f5f9b8a1c)
> Java version: 17.0.5, vendor: GraalVM Community
> Default locale: fr_FR, platform encoding: UTF-8
> OS name: "mac os x", version: "13.4.1", arch: "aarch64", family: "mac"
> Reporter: jycr
> Priority: Major
>
> Relocating parent POM do not work.
> Reproduce steps:
> # Create following POM files :
> {code:xml|title=parent-pom-a.pom}
> <?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
> https://maven.apache.org/xsd/maven-4.0.0.xsd">
> <modelVersion>4.0.0</modelVersion>
> <groupId>com.acme</groupId>
> <artifactId>parent-pom-a</artifactId>
> <version>1.0.0</version>
> <packaging>pom</packaging>
> <distributionManagement>
> <relocation>
> <groupId>com.acme</groupId>
> <artifactId>parent-pom-b</artifactId>
> <version>1.0.0</version>
> </relocation>
> </distributionManagement>
> </project>
> {code}
> {code:xml|title=parent-pom-b.pom}
> <?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
> https://maven.apache.org/xsd/maven-4.0.0.xsd">
> <modelVersion>4.0.0</modelVersion>
> <groupId>com.acme</groupId>
> <artifactId>parent-pom-b</artifactId>
> <version>1.0.0</version>
> <packaging>pom</packaging>
> <properties>
> <properties-from-parent-pom>b</properties-from-parent-pom>
> </properties>
> </project>
> {code}
> {code:xml|title=project-pom.pom}
> <?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
> https://maven.apache.org/xsd/maven-4.0.0.xsd">
> <modelVersion>4.0.0</modelVersion>
> <parent>
> <groupId>com.acme</groupId>
> <artifactId>parent-pom-a</artifactId>
> <version>1.0.0</version>
> </parent>
> <artifactId>project-pom</artifactId>
> <packaging>pom</packaging>
> <properties>
>
> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
>
> <maven.compiler.encoding>${project.build.sourceEncoding}</maven.compiler.encoding>
>
> <project.reporting.outputEncoding>${project.build.sourceEncoding}</project.reporting.outputEncoding>
> </properties>
> <build>
> <plugins>
> <plugin>
>
> <groupId>com.github.ekryd.echo-maven-plugin</groupId>
> <artifactId>echo-maven-plugin</artifactId>
> <version>2.0.0</version>
> <executions>
> <execution>
> <goals>
> <goal>echo</goal>
> </goals>
> <phase>initialize</phase>
> <configuration>
>
> <message>properties-from-parent-pom: ${properties-from-parent-pom}</message>
> </configuration>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> </project>
> {code}
> # Install parent POM files into local cache:
> {code:sh}
> mvn install -f parent-pom-a.pom
> mvn install -f parent-pom-b.pom
> {code}
> # Execute Maven with {{project-pom.pom}}
> {code:sh}
> mvn initialize -f project-pom.pom
> {code}
> Actual result:
> {code}
> [INFO] Scanning for projects...
> [INFO]
> [INFO] ------------------------< com.acme:project-pom
> >------------------------
> [INFO] Building project-pom 1.0.0
> [INFO] from project-pom.pom
> [INFO] --------------------------------[ pom
> ]---------------------------------
> [INFO]
> [INFO] --- echo:2.0.0:echo (default) @ project-pom ---
> [INFO] properties-from-parent-pom: ${properties-from-parent-pom}
> [INFO]
> ------------------------------------------------------------------------
> [INFO] BUILD SUCCESS
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: 0.145 s
> [INFO] Finished at: 2023-07-10T09:47:45+02:00
> [INFO]
> ------------------------------------------------------------------------
> {code}
> Expected result:
> {code}
> [INFO] Scanning for projects...
> [INFO]
> [INFO] ------------------------< com.acme:project-pom
> >------------------------
> [INFO] Building project-pom 1.0.0
> [INFO] from project-pom.pom
> [INFO] --------------------------------[ pom
> ]---------------------------------
> [WARNING] The artifact com.acme:parent-pom-a:pom:1.0.0 has been relocated to
> com.acme:parent-pom-b:pom:1.0.0
> [INFO]
> [INFO] --- echo:2.0.0:echo (default) @ project-pom ---
> [INFO] properties-from-parent-pom: b
> [INFO]
> ------------------------------------------------------------------------
> [INFO] BUILD SUCCESS
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: 0.136 s
> [INFO] Finished at: 2023-07-10T09:48:52+02:00
> [INFO]
> ------------------------------------------------------------------------
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)