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

Michael Osipov commented on MNG-7563:
-------------------------------------

I need to revert my previous statement: {{MAVEN_OPTS}} does not change the 
behavior! Looking again at the fix in here: 
https://github.com/apache/maven/pull/306/files#diff-ad3fd714d4f142348b18532c5019eb27e2a3d8eb533ca5702247e86758de8db2R219-R220
 is the change which cases this to be evaluated: 
https://github.com/apache/maven/blob/adf89ef63ffca07e490f5cc550f9411bad1a7bd6/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java#L1287-L1291
The user property kicks in before your model property kicks in. In the previous 
behavior both user and system properties were merged on purpose into system 
properties to have a lower precedence compared to model properties.

We need now a canonical decision on how to proceed here and is right or wrong. 
Neither is wrong and neither is right at the moment.

> User properties now override model properties in dependencies
> -------------------------------------------------------------
>
>                 Key: MNG-7563
>                 URL: https://issues.apache.org/jira/browse/MNG-7563
>             Project: Maven
>          Issue Type: Bug
>          Components: Dependencies, POM
>    Affects Versions: 3.8.5, 3.8.6
>            Reporter: Hervé Guillemet
>            Assignee: Michael Osipov
>            Priority: Major
>             Fix For: waiting-for-feedback
>
>         Attachments: poms.zip
>
>
> An important change has been introduced in 3.8.5 that breaks some existing 
> builds: Java system properties now take precedence over default values of 
> user properties in dependency POMs. This look like a bug since it's now easy 
> to affect dependency behaviors with system properties, a practice that has 
> been discouraged. But maybe do you consider this as a new feature ?
> As an example, 3 poms are attached to this ticket.
> After installing projects b and c, building project a with:
> {{mvn package -Ddep=x}}
> used to succeed until 3.8.4 (-D is ignored) but throws error with 3.8.5 and 
> 3.8.6 (-D override the default).
> Note that without the setting of the default value for property {{dep}} in 
> project b, the build fails with any version of Maven.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to