You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Herve Boutemy (JIRA)" <ji...@codehaus.org> on 2011/05/01 17:12:22 UTC

[jira] Updated: (MNG-2591) Plugins are merged incorrectly

     [ http://jira.codehaus.org/browse/MNG-2591?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Herve Boutemy updated MNG-2591:
-------------------------------

    Description: 
This bug is similar to http://jira.codehaus.org/browse/MANTRUN-57;jsessionid=awtyLFBPEQN6vVmwu4 - the difference being the plugins are not correctly merged.

In the parent's POM, the following was defined:
{code:xml}<build>
  <pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-eclipse-plugin</artifactId>
        <configuration>
          <downloadSources>true</downloadSources>
          <additionalBuildcommands>
            <buildcommand>
              parentBuildCommand
            </buildcommand>
          </additionalBuildcommands>
        </configuration>
      </plugin>
    </plugins>
  </pluginManagement>
</build>{code}


in the child's POM, the following was defined.
{code:xml}<build>
  <pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-eclipse-plugin</artifactId>
        <configuration>
          <additionalBuildcommands>
            <buildcommand>
              childBuildCommand
            </buildcommand>
          </additionalBuildcommands>
        </configuration>
      </plugin>
    </plugins>
  </pluginManagement>
</build>{code}

I expect the effective POM to look like this:
{code:xml}<build>
  <pluginManagement>
    <plugins>
      <plugin>
        <artifactId>maven-eclipse-plugin</artifactId>
        <configuration>
          <additionalBuildcommands>
            <buildcommand>
              parentBuildCommand
            </buildcommand>
            <buildcommand>
              childBuildCommand
            </buildcommand>
          </additionalBuildcommands>
          <downloadSources>true</downloadSources>
        </configuration>
      </plugin>
    </plugins>
  </pluginManagement>
</build>{code}

Outside of the common problem of the <plugin> element being duplicated, here's the issue this bug is trying to address:
In the effective pom, the the <downloadSources> element was correctly merged, however, the <buildCommand> element was not. It seems like the merging only correctly happens down to a given level.

I noticed that http://jira.codehaus.org/browse/MNG-2297;jsessionid=awtyLFBPEQN6vVmwu4 has a patch attached, so this may be fixed in 2.0.5, I just wanted to raise the use case in case that patch did not address this specific problem.

I'm attaching the POMs needed to reproduce the problem and the effective POM for the child.

  was:
This bug is similar to http://jira.codehaus.org/browse/MANTRUN-57;jsessionid=awtyLFBPEQN6vVmwu4 - the difference being the plugins are not correctly merged.

In the parent's POM, the following was defined:
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<downloadSources>true</downloadSources>
<additionalBuildcommands>
<buildcommand>
parentBuildCommand
</buildcommand>
</additionalBuildcommands>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>


in the child's POM, the following was defined.
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<additionalBuildcommands>
<buildcommand>
childBuildCommand
</buildcommand>
</additionalBuildcommands>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>

I expect the effective POM to look like this:
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<additionalBuildcommands>
<buildcommand>
parentBuildCommand
</buildcommand>
<buildcommand>
childBuildCommand
</buildcommand>
</additionalBuildcommands>
<downloadSources>true</downloadSources>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>

Outside of the common problem of the <plugin> element being duplicated, here's the issue this bug is trying to address:
In the effective pom, the the <downloadSources> element was correctly merged, however, the <buildCommand> element was not. It seems like the merging only correctly happens down to a given level.

I noticed that http://jira.codehaus.org/browse/MNG-2297;jsessionid=awtyLFBPEQN6vVmwu4 has a patch attached, so this may be fixed in 2.0.5, I just wanted to raise the use case in case that patch did not address this specific problem.

I'm attaching the POMs needed to reproduce the problem and the effective POM for the child.


> Plugins are merged incorrectly
> ------------------------------
>
>                 Key: MNG-2591
>                 URL: http://jira.codehaus.org/browse/MNG-2591
>             Project: Maven 2 & 3
>          Issue Type: Bug
>    Affects Versions: 2.0.4
>         Environment: Windows XP
>            Reporter: Allan Shoup
>            Assignee: John Casey
>            Priority: Blocker
>             Fix For: 2.0.8
>
>         Attachments: effective-child-pom.xml, test-poms.zip
>
>
> This bug is similar to http://jira.codehaus.org/browse/MANTRUN-57;jsessionid=awtyLFBPEQN6vVmwu4 - the difference being the plugins are not correctly merged.
> In the parent's POM, the following was defined:
> {code:xml}<build>
>   <pluginManagement>
>     <plugins>
>       <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-eclipse-plugin</artifactId>
>         <configuration>
>           <downloadSources>true</downloadSources>
>           <additionalBuildcommands>
>             <buildcommand>
>               parentBuildCommand
>             </buildcommand>
>           </additionalBuildcommands>
>         </configuration>
>       </plugin>
>     </plugins>
>   </pluginManagement>
> </build>{code}
> in the child's POM, the following was defined.
> {code:xml}<build>
>   <pluginManagement>
>     <plugins>
>       <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-eclipse-plugin</artifactId>
>         <configuration>
>           <additionalBuildcommands>
>             <buildcommand>
>               childBuildCommand
>             </buildcommand>
>           </additionalBuildcommands>
>         </configuration>
>       </plugin>
>     </plugins>
>   </pluginManagement>
> </build>{code}
> I expect the effective POM to look like this:
> {code:xml}<build>
>   <pluginManagement>
>     <plugins>
>       <plugin>
>         <artifactId>maven-eclipse-plugin</artifactId>
>         <configuration>
>           <additionalBuildcommands>
>             <buildcommand>
>               parentBuildCommand
>             </buildcommand>
>             <buildcommand>
>               childBuildCommand
>             </buildcommand>
>           </additionalBuildcommands>
>           <downloadSources>true</downloadSources>
>         </configuration>
>       </plugin>
>     </plugins>
>   </pluginManagement>
> </build>{code}
> Outside of the common problem of the <plugin> element being duplicated, here's the issue this bug is trying to address:
> In the effective pom, the the <downloadSources> element was correctly merged, however, the <buildCommand> element was not. It seems like the merging only correctly happens down to a given level.
> I noticed that http://jira.codehaus.org/browse/MNG-2297;jsessionid=awtyLFBPEQN6vVmwu4 has a patch attached, so this may be fixed in 2.0.5, I just wanted to raise the use case in case that patch did not address this specific problem.
> I'm attaching the POMs needed to reproduce the problem and the effective POM for the child.

-- 
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