You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Paul Benedict (JIRA)" <ji...@codehaus.org> on 2014/07/02 15:44:33 UTC
[jira] (MNG-4132) import dependencies should honor "nearest
definition" resolution
[ https://jira.codehaus.org/browse/MNG-4132?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul Benedict updated MNG-4132:
-------------------------------
Fix Version/s: (was: Issues to be reviewed for 3.x)
> import dependencies should honor "nearest definition" resolution
> ----------------------------------------------------------------
>
> Key: MNG-4132
> URL: https://jira.codehaus.org/browse/MNG-4132
> Project: Maven
> Issue Type: Bug
> Components: Dependencies
> Affects Versions: 2.0.10, 2.1.0
> Reporter: Mike Youngstrom
> Attachments: import.zip
>
>
> Maven defines a "nearest definition" approach to dependency resolution. However, the newly introduced "import" dependencies don't. They take a top down "first defined" approach.
> For example:
> bom1:
> defines log4j:1.2.9
> bom2:
> defines log4j:1.2.12
> bom3
> imports bom1
> jar
> imports bom3
> imports bom2
> mvn dependency:tree in "jar" will resolve log4j:1.2.9 simply because it is first in the dependencyManagement section of the jar. I would expect it to resolve log4j:1.2.12 since it is the "nearest definition" in this scenario.
> This is somewhat confusing because this example works differently:
> bom1
> defines log4j:1.2.9
> jar
> imports bom1
> defines log4j:1.2.12
> mvn dependency:tree in "jar" will resolve log4j:1.2.12. In this case "nearest definition" is honored.
> I've attached a test case illustrating the problem.
--
This message was sent by Atlassian JIRA
(v6.1.6#6162)