You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sc...@apache.org on 2016/03/07 16:57:17 UTC

maven git commit: [MNG-4345] [regression] Plugin executions contributed by default lifecycle mapping execute after other plugin executions bound to the same phase

Repository: maven
Updated Branches:
  refs/heads/master 4bdb16c93 -> 39c25cea7


[MNG-4345] [regression] Plugin executions contributed by default lifecycle mapping execute after other plugin executions bound to the same phase

o This reverts commit ceba686009cd21568e002f5a9ebb130c21bf0453 committed
  by accident.


Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/39c25cea
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/39c25cea
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/39c25cea

Branch: refs/heads/master
Commit: 39c25cea76063c0e345f78a447fd71d06369bdf8
Parents: 4bdb16c
Author: Christian Schulte <sc...@apache.org>
Authored: Mon Mar 7 16:56:16 2016 +0100
Committer: Christian Schulte <sc...@apache.org>
Committed: Mon Mar 7 16:56:16 2016 +0100

----------------------------------------------------------------------
 .../model/plugin/DefaultLifecycleBindingsInjector.java | 11 +++++++++++
 maven-model/src/main/mdo/maven.mdo                     | 13 +++++++++++++
 2 files changed, 24 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/39c25cea/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java b/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java
index a4d7138..aa491e7 100644
--- a/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java
+++ b/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java
@@ -30,6 +30,7 @@ import org.apache.maven.model.Build;
 import org.apache.maven.model.Model;
 import org.apache.maven.model.Plugin;
 import org.apache.maven.model.PluginContainer;
+import org.apache.maven.model.PluginExecution;
 import org.apache.maven.model.PluginManagement;
 import org.apache.maven.model.building.ModelBuildingRequest;
 import org.apache.maven.model.building.ModelProblem.Severity;
@@ -161,6 +162,16 @@ public class DefaultLifecycleBindingsInjector
                 target.setPlugins( result );
             }
         }
+
+        @Override
+        protected void mergePluginExecution( PluginExecution target, PluginExecution source, boolean sourceDominant,
+                                             Map<Object, Object> context )
+        {
+            super.mergePluginExecution( target, source, sourceDominant, context );
+
+            target.setPriority( Math.min( target.getPriority(), source.getPriority() ) );
+        }
+
     }
 
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/39c25cea/maven-model/src/main/mdo/maven.mdo
----------------------------------------------------------------------
diff --git a/maven-model/src/main/mdo/maven.mdo b/maven-model/src/main/mdo/maven.mdo
index f85d233..3f6b6d6 100644
--- a/maven-model/src/main/mdo/maven.mdo
+++ b/maven-model/src/main/mdo/maven.mdo
@@ -2912,6 +2912,19 @@
           <description>The build lifecycle phase to bind the goals in this execution to. If omitted,
             the goals will be bound to the default phase specified by the plugin. </description>
         </field>
+        <field xml.transient="true">
+          <name>priority</name>
+          <version>4.0.0+</version>
+          <type>int</type>
+          <description>
+            <![CDATA[
+            The priority of this execution compared to other executions which are bound to the same phase.
+            <strong>Warning:</strong> This is an internal utility property that is only public for technical reasons,
+            it is not part of the public API. In particular, this property can be changed or deleted without prior
+            notice.
+            ]]>
+          </description>
+        </field>
         <field>
           <name>goals</name>
           <version>4.0.0+</version>