Martin K created MNG-6752:
-----------------------------

             Summary: submodule with $revision version can't be referenced by a 
normal version number
                 Key: MNG-6752
                 URL: https://issues.apache.org/jira/browse/MNG-6752
             Project: Maven
          Issue Type: Bug
          Components: Dependencies
    Affects Versions: 3.6.1
            Reporter: Martin K


In the following example, pp/pom.xml can't reference its parent with a specific 
version number ("<version>1-SNAPSHOT</version>") - Unless 
pp1:pp-pom:pom:1-SNAPSHOT is already present in a maven repository, the build 
will fail.

Maven reads the parent poms and caches them, before resolving $revision. 
Therefore it just caches the artifact version "${revsion}" and fails to load 
the local parent pom, if the parent reference does not also use the version 
"${revision}"

Precondition: Non of these artificats is already present in a local or remote 
maven repository.

File pom.xml:
{code}
<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>pp</groupId>
 <artifactId>y-pom</artifactId>
 <name>yy</name>
 <packaging>pom</packaging>
 <version>1-SNAPSHOT</version>

<modules>
 <module>pp1</module>
 <module>pp</module>
 </modules>
<properties>
 <revision>1-SNAPSHOT</revision>
 </properties>
</project>
{code}

File ./pp/pom.xml:
{code}
<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>pp</groupId>
 <artifactId>pp-pom</artifactId>
 <name>PP</name>
 <packaging>pom</packaging>
 <version>${revision}</version>
 <parent>
 <groupId>pp1</groupId>
 <artifactId>pp-pom</artifactId>
 <version>1-SNAPSHOT</version>
 <!--<version>${revision}</version>-->
 <relativePath>../pp1/pom.xml</relativePath>
 </parent>
 <properties>
 <revision>1-SNAPSHOT</revision>
 </properties>

</project>
{code}

File ./pp1/pom.xml:
{code}
<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>pp1</groupId>
 <artifactId>pp-pom</artifactId>
 <name>PP</name>
 <packaging>pom</packaging>
 <version>${revision}</version>

<properties>
 <revision>1-SNAPSHOT</revision>
 </properties>
</project>
{code}

 



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to