You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Alireza Ghassemi (Jira)" <ji...@apache.org> on 2019/09/02 11:36:00 UTC
[jira] [Updated] (MNG-6663) overriding parent dependency management
doesn't work for transitive dependencies
[ https://issues.apache.org/jira/browse/MNG-6663?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alireza Ghassemi updated MNG-6663:
----------------------------------
Attachment: pom.xml
> overriding parent dependency management doesn't work for transitive dependencies
> --------------------------------------------------------------------------------
>
> Key: MNG-6663
> URL: https://issues.apache.org/jira/browse/MNG-6663
> Project: Maven
> Issue Type: Bug
> Components: Dependencies
> Affects Versions: 3.6.1
> Reporter: Alireza Ghassemi
> Priority: Major
> Attachments: pom.xml, pom.xml
>
>
> overriding the dependencies of a parent POM is possible by setting the dependency version explicitly in the child POM which makes sense; since a parent POM is "suggesting" dependency versions for children that don't know which version to use and a child that knows exactly which version they need can ignore their parents "suggestion". however that is not the case for transitive dependencies of the dependency explicitly versioned in the child.
> example POM:
> [^pom.xml]
> mvn dependency:tree output:
> [INFO] foo.bar:kotlin-test:jar:1.0-SNAPSHOT
> [INFO] - org.jetbrains.kotlin:kotlin-stdlib-jdk8:jar:1.3.31:compile
> [INFO] +- org.jetbrains.kotlin:kotlin-stdlib:jar:1.2.71:compile
> [INFO] | +- org.jetbrains.kotlin:kotlin-stdlib-common:jar:1.2.71:compile
> [INFO] | - org.jetbrains:annotations:jar:13.0:compile
> [INFO] - org.jetbrains.kotlin:kotlin-stdlib-jdk7:jar:1.2.71:compile
> expected:
> [INFO] foo.bar:kotlin-test:jar:1.0-SNAPSHOT
> [INFO] - org.jetbrains.kotlin:kotlin-stdlib-jdk8:jar:1.3.31:compile
> [INFO] +- org.jetbrains.kotlin:kotlin-stdlib:jar:1.3.31:compile
> [INFO] | +- org.jetbrains.kotlin:kotlin-stdlib-common:jar:1.3.31:compile
> [INFO] | - org.jetbrains:annotations:jar:13.0:compile
> [INFO] - org.jetbrains.kotlin:kotlin-stdlib-jdk7:jar:1.3.31:compile
>
> since 'kotlin-stdlib-jdk8:1.3.31' was compiled with 'kotlin-stdlib:1.3.31' runtime exceptions will happen; yet nobody needs 'kotlin-stdlib:1.2.71'
--
This message was sent by Atlassian Jira
(v8.3.2#803003)