maven-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Maczka Michal <>
Subject RE: [Strategy] How to manage several subprojects as one project?
Date Tue, 01 Jun 2004 08:44:14 GMT

> -----Original Message-----
> From: Jerome Lacoste []
> Sent: Tuesday, June 01, 2004 5:36 AM
> To: Maven Developers List
> Subject: Re: [Strategy] How to manage several subprojects as one
> project?
> On Sun, 2004-05-23 at 16:13, Vincent Massol wrote:
> > Hi guys,
> > 
> > I'm still trying to slowly convert the Cactus build (which uses Ant)
> > into a Maven build. Here's a use case I have. Currently I have the
> > following:
> [...]
> I am wondering if the notion of module, being a sub-part of a 
> project, should be brought to maven one day.
> IDEs, such as IDEA, allow for a project to contain several 
> modules (web module, J2EE module, ...). These modules can be 
> made so they have no significance outside the project, like 
> the modules Vincent wants to see in cactus.

This thing already exist in Maven. 
You might see what idea:multiproject goal does (maven-idea-plugin)

> I understand the requirements. It's like basic encapsulation. 
> Sometimes you don't want to expose every component, otherwise 
> someone might create dependencies on them, making them more 
> costly to change.
> So I could see the notion of modules as a sub-part of a 
> project appear one day in maven.
> The idea would then be how to make this implementation. Reuse 
> project inheritance sounds great, but maybe some things are 
> missing in order to make them more user friendly. Adding a 
> tag to a project to disable some of the operations, like jar 
> might help.

Not at all. 

Maven project exchange information via local repository. 
What needs to be publicly visible should appear in remote repository. And
this is simple ann imo handles most of the usecases
I would compare the order introduced by existence of local to that order
which is introduced by some containers in component world
It is nicely illustrated here: (replace word
"keel" with "repository")

> Allowing to reference and reuse/merge the build artifacts 
> (classes, documentation...)  would be a requirement.

That's the one place where we might want to consider some improvements. 
Vincent has a problem here because he wants to optimise his build and he
does not want to 
repackage jars
Maven already provides sufficient flexibility to handle such requirements
but sometimes in the way
which is far away from being optimal.

We don't have directly the problem with merging classes or documentation -
this works fine or can work fine
What Vincent is wanting is to re-use the same sources for two or more

> Finally, maybe something helping to define the type of a 
> module is needed. That would help to have things like 
> automatic building of a web module for us. More code reuse 
> for more projects.
> How do requirements like that fit with maven or maven2?
> I am currently trying to make project inheritance work. 
> Didn't find much info in the doc to see how it actually 
> works. Will have to look at the examples in the test code.
> Cheers,
> Jerome


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message