All child modules are forced to share the same parent POM ---------------------------------------------------------
Key: MRELEASE-151 URL: http://jira.codehaus.org/browse/MRELEASE-151 Project: Maven 2.x Release Plugin Issue Type: Bug Affects Versions: 2.0-beta-4 Environment: Windows XP Reporter: James Carpenter Priority: Blocker Problem Description: Assume the following layout: fooProject/pom.xml fooProject/dotnet1/pom.xml (has parent pom of maven-csharp-master-parent) fooProject/dotnet2/pom.xml (has parent pom of maven-csharp-master-parent) fooProject/dotnet3/pom.xml (has parent pom of maven-csharp-master-parent) fooProject/java1/pom.xml (has parent pom found above it ../pom.xml) fooProject/java2/pom.xml (has parent pom found above it ../pom.xml) fooProject/java3/pom.xml (has parent pom of maven-fancy-framework-master-parent) Assume fooProject/pom.xml lists dotnet1, dotnet2, dotnet3, java1, and java2 in the modules section. Furthemore, assume that the dotnet modules all refer to a parent pom of maven-csharp-master-parent rather than refering to the pom shown at fooProject/pom.xml. By changing into the fooProject directory one can successfully run mvn clean, and mvn install without any problems. Unfortunately, the maven release plugin has problems because it seems to expect all of the child poms to refer to the parent above them. Motivation: Any time a child pom needs a bunch of custom plugin's configured, its always nice to inherit the setup from a parent pom. As it turns out, modules which should naturally be released and packaged together occassionally need to be configured quite differently. This is certainly the case whenever dotnet code is co-released with java code. The dotnet code requires a significant number of custom plugins be setup for any arbitrary csharp build. It therefore makes a lot of sense to have a maven-csharp-master-parent to take care of this. These csharp related configurations are inappropriate for a java build. In my case the java code happens to be a maven plugin which is executing the csharp code from a sister module (equivalent in example above would be for a plugin in fooProject/java1 to be executing code from fooProject/dotnet3. Although the motivating example above describes the issue in terms of java and dotnet build interactions, its not at all unreasonable to think one might have java code requiring lots of plugins (say cactus configuration, etc) which would be inappropriate for sister modules. Required differences in plugin configuration should not impose any constraints on which modules are considered to be released/packaged together. Maven doesn't impose any such constraint, but the release plugin is. Progress So Far: I havn't taken the time to dig around in the release plugin and figure out how to fix this. Currently, I am just manually performing what the release plugin would normally do for me. -- 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