[ 
https://issues.apache.org/jira/browse/MNG-6141?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16266502#comment-16266502
 ] 

Christian Schulte commented on MNG-6141:
----------------------------------------

FWIW I put a lot of effort into sorting out things like this during development 
of Maven 3.4.0. Nearly a year of work. All of this effort has been reverted and 
the master branch got reset. Personally I am still using that Maven version, of 
course. It is behaving differently but in a way I (and the users having 
reported the issues in JIRA) expect Maven to behave by default. It is available 
in my forked [Maven repository|https://github.com/ChristianSchulte/maven] and 
[Maven resolver repository|https://github.com/ChristianSchulte/maven-resolver] 
on Github. I am keeping the version at 3.4.0-SNAPSHOT so to not introduce any 
confusion. You can also grab a [binary 
release|https://github.com/ChristianSchulte/maven/releases/download/2017-11-27/apache-maven-3.4.0-SNAPSHOT-bin.zip]
 in case you are interested to see how your projects behave with quite a lot of 
issues resolved not released and never to be released because of corrections to 
dependency resolution changing behaviour. It includes fixes for what this issue 
is about. Using that Maven, I seldomly stumble upon projects running into such 
corner cases without noticing and help them fix things.

> Dependency management overrides are not transitive and should be considered 
> an anti-pattern.
> --------------------------------------------------------------------------------------------
>
>                 Key: MNG-6141
>                 URL: https://issues.apache.org/jira/browse/MNG-6141
>             Project: Maven
>          Issue Type: Bug
>            Reporter: Christian Schulte
>            Priority: Critical
>         Attachments: MNG-6141-3.zip, MNG-6141.zip
>
>
> Overriding the dependency management in a module's {{<dependencies>}} 
> section, the overridden value will not be preserved transitively. It makes no 
> sense to be able to override the dependency management in a module if that is 
> only effective in that module and nowhere else. Overriding the dependency 
> management from inside a {{<dependencies>}} element should be considered an 
> anti-pattern. Maven should provide a warning when it is used. During the 
> development of Maven 3.4, there have been quite a few discussions on dev@ 
> about build issues which were all caused by overriding the dependency 
> management that way without noticing this is not supported transitively.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to