[ http://jira.codehaus.org/browse/MNG-1847?page=all ]
John Casey updated MNG-1847:
----------------------------
Fix Version: 2.1
sounds like another XML merging problem. We need a better solution to this.
> Incorrect configuration merging when using multiple executions of antrun
> ------------------------------------------------------------------------
>
> Key: MNG-1847
> URL: http://jira.codehaus.org/browse/MNG-1847
> Project: Maven 2
> Type: Bug
> Versions: 2.0, 2.0.1
> Environment: windows xp, maven 2.0
> Reporter: Michal Stochmialek
> Fix For: 2.1
> Attachments: testcase.zip
>
>
> I've encovered strange behaviour of maven while merging configuration. I've
> prepared two test cases.
> The first one shows how executions from different phases and profiles are
> incorrectly merged. One antrun execution is in main build element in package
> phase. Second antrun execution is in 'foo' profile in validation phase. When
> running mvn using this profile with default goal (validate), maven is merging
> two antrun executions (but not completely).
> <project >
> <modelVersion>4.0.0</modelVersion>
> <groupId>testcase</groupId>
> <artifactId>test2</artifactId>
> <version>1.0</version>
> <build>
> <plugins>
> <plugin>
> <artifactId>maven-antrun-plugin</artifactId>
> <executions>
> <execution>
> <phase>package</phase>
> <configuration>
> <tasks>
> <echo>main build</echo>
> <mkdir dir="fooo"/>
> <delete dir="fooo"/>
> </tasks>
> </configuration>
> <goals>
> <goal>run</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> <profiles>
> <profile>
> <id>foo</id>
> <build>
> <defaultGoal>validate</defaultGoal>
> <plugins>
> <plugin>
> <artifactId>maven-antrun-plugin</artifactId>
> <executions>
> <execution>
> <phase>validate</phase>
> <configuration>
> <tasks>
> <echo>Foo profile</echo>
> </tasks>
> </configuration>
> <goals>
> <goal>run</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> </profile>
> </profiles>
> </project>
> C:\test2>mvn -Pfoo
> [INFO] Scanning for projects...
> [INFO]
> ----------------------------------------------------------------------------
> [INFO] Building Unnamed - testcase:test2:jar:1.0
> [INFO] task-segment: [validate]
> [INFO]
> ----------------------------------------------------------------------------
> [INFO] [antrun:run {execution: default}]
> [INFO] Executing tasks
> [echo] Foo profile
> [mkdir] Created dir: P:\maven\testcase\test2\fooo
> [delete] Deleting directory P:\maven\testcase\test2\fooo
> [INFO] Executed tasks
> [INFO]
> ----------------------------------------------------------------------------
> [INFO] BUILD SUCCESSFUL
> [INFO]
> ----------------------------------------------------------------------------
> [INFO] Total time: 1 second
> [INFO] Finished at: Thu Dec 15 15:43:23 CET 2005
> [INFO] Final Memory: 2M/4M
> [INFO]
> ----------------------------------------------------------------------------
> The second testcase shows how different executions of antrun are incorrectly
> merged. There are two different antrun executions. One in compile phase and
> one in package phase. They should 'echo' different messages, but they DON'T.
> <project>
> <modelVersion>4.0.0</modelVersion>
> <groupId>testcase</groupId>
> <artifactId>test1</artifactId>
> <name>test1</name>
> <version>1.0</version>
> <build>
> <defaultGoal>package</defaultGoal>
> <plugins>
> <plugin>
> <artifactId>maven-antrun-plugin</artifactId>
> <executions>
> <execution>
> <phase>compile</phase>
> <configuration>
> <tasks>
> <echo>main build / compile phase</echo>
> </tasks>
> </configuration>
> <goals>
> <goal>run</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> <plugin>
> <artifactId>maven-antrun-plugin</artifactId>
> <executions>
> <execution>
> <phase>package</phase>
> <configuration>
> <tasks>
> <echo>main build / package phase</echo>
> </tasks>
> </configuration>
> <goals>
> <goal>run</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> </project>
> c:\test1>mvn
> [INFO] Scanning for projects...
> [INFO]
> ----------------------------------------------------------------------------
> [INFO] Building test1
> [INFO] task-segment: [package]
> [INFO]
> ----------------------------------------------------------------------------
> [INFO] [resources:resources]
> [INFO] Using default encoding to copy filtered resources.
> [INFO] [compiler:compile]
> [INFO] No sources to compile
> [INFO] [antrun:run {execution: default}]
> [INFO] Executing tasks
> [echo] main build / compile phase
> [INFO] Executed tasks
> [INFO] [resources:testResources]
> [INFO] Using default encoding to copy filtered resources.
> [INFO] [compiler:testCompile]
> [INFO] No sources to compile
> [INFO] [surefire:test]
> [INFO] No tests to run.
> [INFO] [jar:jar]
> [WARNING] JAR will be empty - no content was marked for inclusion!
> [INFO] Building jar: P:\maven\testcase\test1\target\test1-1.0.jar
> [INFO] [antrun:run {execution: default}]
> [INFO] Executing tasks
> [echo] main build / compile phase
> [INFO] Executed tasks
> [INFO]
> ----------------------------------------------------------------------------
> [INFO] BUILD SUCCESSFUL
> [INFO]
> ----------------------------------------------------------------------------
> [INFO] Total time: 4 seconds
> [INFO] Finished at: Thu Dec 15 15:36:03 CET 2005
> [INFO] Final Memory: 3M/7M
> [INFO]
> ----------------------------------------------------------------------------
> I've attached both poms.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira