You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Jordan Zimmerman (JIRA)" <ji...@apache.org> on 2015/09/16 17:40:45 UTC
[jira] [Created] (MNG-5890) In reactor projects, having a "root"
counterpart to "project" properties would be useful
Jordan Zimmerman created MNG-5890:
-------------------------------------
Summary: In reactor projects, having a "root" counterpart to "project" properties would be useful
Key: MNG-5890
URL: https://issues.apache.org/jira/browse/MNG-5890
Project: Maven
Issue Type: Improvement
Components: Bootstrap & Build, core, General
Affects Versions: 3.3.3
Reporter: Jordan Zimmerman
Often, in reactor builds, modules need to refer to a properties relative to the root pom. E.g.:
{noformat}
root-pom.xml
\___ module1-pom.xml
\___ sub-module1-pom.xml
\___ module2-pom.xml
\___ sub-module2-pom.xml
{noformat}
In this example, there's no way to set a dependency in the root pom that uses the root pom's parent version. This is because ${project.parent.version} will be evaluated relatively in module1/2 and sub-module1/2. In module1/2, it will refer to the root's parent. But, in sub-module1/2 it will refer only to the root.
Ideally, we could do something like this:
{code:type=xml}
<parent>
<groupId>my.group</groupId>
<artifactId>foo</artifactId>
<version>1.2.3</version>
</parent>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>my.group</groupId>
<artifactId>a-different-artifact-in-my.group</artifactId>
<version>${root.parent.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
{code}
With this "root" feature, ${root.parent.version} would refer to the same value at every level of the reactor build.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)