You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Jay mann (JIRA)" <ji...@apache.org> on 2017/06/30 12:17:00 UTC
[jira] [Created] (MNG-6246) Inconsistent override behaivor with BOM
vs dependency
Jay mann created MNG-6246:
-----------------------------
Summary: Inconsistent override behaivor with BOM vs dependency
Key: MNG-6246
URL: https://issues.apache.org/jira/browse/MNG-6246
Project: Maven
Issue Type: Bug
Components: Dependencies
Affects Versions: 3.5.0
Environment: osx jdk 1.8
Reporter: Jay mann
Attachments: mvn-bug.tar.gz
Consider we have 2 BOM files:
bom1 - dependency version 1
bom2 - dependency version 2'
When a bom1 is imported into a parent and bom2 is imported into a child of parernt, child correctly overrides the dependency and uses "verision 2".
When parent does not import bom1 but explicitly states "dependency 1" in the <dependencyManagement> section, and child imports bom2, "version 1" of dependency is used (bom2 in child does not override the dependency)
This seems like inconsistent behavior as documentation explains that a BOM basically imports the <dependencyManagement> section of the bom into the pom current pom.
If this is expected behavior it should be documented as we recently moved all our dependencyManagement section into a BOM for organizational reasons and it did not work as expected.
Attached is a sample, to test simply extract and run:
mvn install -f bom1/pom.xml
mvn install -f bom2/pom.xml
mvn dependency:tree -f project/child/pom.xml
mvn dependency:tree -f project2/child/pom.xml
project uses bom in parent and child and is overridden correctly.
project2 parent uses dependency instead of bom, child uses bom but dependency is NOT overridden.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)