You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Michael Damone <md...@nexusbio.com> on 2010/08/25 02:51:13 UTC

Maven release with separate aggregator and parent pom

I am having a problem similar (or exactly the same) as described in
MRELEASE-576 (http://jira.codehaus.org/browse/MRELEASE-576).

 

I have a structure like this

 

ExampleProject

|

+- branches

|

+- tags

|

+- trunk

   |

   +- pom.xml (modules=example-parent,example-app,example)

   |

   +- example-parent

   |  |

   |  +- pom.xml

   |

   +- example-app

   |  |

   |  +- pom.xml (parent=example-parent)

   |

   +- example-module

      |

      +- pom.xml (parent=example-parent)

      |

      +- src

 

So basically I would describe this as having a simple aggregator pom
(example-releng) that just lists the modules

Then I have a parent pom (example-parent) that contains my configurations
for the child modules to inherit from

Then I have modules (example-app,example) that have a parent and usual
module stuff

 

This setup seems to work for release:branch but not release:prepare.

 

When I do release:prepare, what happens is the "tags" folder ends up getting
everything under ExampleProject (i.e. branches,tags,trunk)

 

Is there any kind of special option to get release:prepare to tag the
correct folder (just the "trunk" folder)

 

This structure does work if I make the example-releng the parent for
example-parent, but that causes me problems because I use eclipse and don't
want to have to have the example-releng pom checked out into the root of my
workspace.

 

I have also gotten this to work using the regular "flat project structure"
no aggregator pom (example-releng) so that example-parent just declares all
the modules.

But this causes me problems when I try to run a "regular" maven goal (like
install) with -pl option to only build one project (with it's dependencies
using -am).

Which I have also tried using mvn reactor:make -Dmake.artifacts=example but
that doesn't seem to work the with the "flat project structure" either.

 

So basically I'm looking for what I can do from here???

 

What structure do I use if I'd like to be able to tag and branch and build
using the same structure (with the added twist of being able to work inside
eclipse)

 

Any pointers on how to get all this to work would be greatly appreciated.

 

Thanks,

Michael