I am trying to build a limited set of modules based on the parent pom
file being used. I tried using profiles but there does not seem to be
a way to trigger a profile based on the parent POM. Here is the
scenario I am trying to figure out. I have a project base POM which
has a number of modules. I want to build various subsets of those
modules depending on a setting in the parent POM for this base POM.

Here is a sample base POM:
  <modules>
    <module>api</module>
    <module>impl</module>
    <module>tests</module>
    <module>alternate-impl</module>
    <module>tool</module>
  </modules>

I would like to build just the api and impl modules in circumstance
one (services only).
  <modules>
    <module>api</module>
    <module>impl</module>
  </modules>

I would like to optionally add in the tests module and/or the tool
module to include the tests or the webapp.
  <modules>
    <module>api</module>
    <module>impl</module>
    <module>tool</module>
  </modules>

I would also like to be able to specify that I need to use an
alternate implementation of the service in place of the current impl
when the service is built.
  <modules>
    <module>api</module>
    <module>alternate-impl</module>
    <module>tests</module>
  </modules>

The final key here is that the parent POM for this project base POM
will change depending on which set of source code is checked out.
Currently we have one parent POM which includes all the base POMs for
all central services and then one which includes modules for all the
optional services. This has a huge limitation in that we have redefine
base poms for all the core services to exclude the accompanying
webapps and tests. I would ideally like to automate this since
currently we have to maintain huge lists of modules in both (soon to
be three) the parent POMs.

It looks like I can accomplish this via profiles, except that those
require lots of command line parameters. Is there a way to do this
where the user would not have put a huge number of command line
paramters down or am I stuck maintaining multiple parent POMs with
huge lists of modules and multiple base POMs for each project?

Open to suggestions about restructuring the project layout as well.
Here is an example of one version of parent POM and a set of base POMs:
https://source.sakaiproject.org/svn/cafe/trunk/

-AZ

-- 
Aaron Zeckoski ([EMAIL PROTECTED])
Senior Research Engineer - CARET - Cambridge University
[http://bugs.sakaiproject.org/confluence/display/~aaronz/]
Sakai Fellow - [http://aaronz-sakai.blogspot.com/]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to