This bug should be solved independent of MNG-1412.
This is a serious defect.
Considering the high number of votes and watchers it is important to a lot of people.
It should be backported to 2.0.x stream.
After that a new 2.0.x release should be made.
Having to wait over one year for a simple HashSet -> LinkedHashSet and HashMap -> LinkedHashMap replacement is ridiculous.
Even more so, considering that a patch has been supplied over half a year ago.
@@ Use Case @@
<project ...>
...
<modules>
<module>ejb</module>
<module>war</module>
</modules>
...
<build>
...
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<inherited>false</inherited>
<executions>
<execution>
<phase>install</phase>
<configuration>
<tasks>
... deploy to server ...
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
...
</build>
...
</project>
Let's say "ejb" contains EJB stuff and "war" contains the web application; "war" depends on "ejb"; and both are children of a parent POM, so that the generated "ejb" JAR gets packaged into the WAR.
Now we want to be able to use "install" to deploy the created WAR to the server (yes, there's Cargo, but it does not support all JEE containers, yet.)
We have to set <inherited>false</inherited> so Maven won't run the deployment for "ejb" and "war".
But it does not work because "maven-antrun-plugin" is run before the children ("ejb" and "war") are run.
I'm having the same problem. I need to run two plugins in the generate-sources phase, where one depends on the output of the other.
For more information, please see http://www.nabble.com/Plugin-execution-order-within-lifecycle-phase-t1541372.html#a4187121