Am 07.09.2011 um 20:50 schrieb Andy Seaborne:

> Maven/eclipse experts,
> 
> I have tried setting up a multi-module project ... some questions ...
> 
> 
> 1/ Flat vs hierarchical directories.

As always, it depends ... yes, that's not a helpful answer either

> 
> Hierarchical is maven preference and m2eclispe generates them but isn't this 
> a problem with SVN?  if the parent is checked out, all the modules get 
> checked out.  Isn't that a bit of a pain?

First, svn allows to limit the depth for most operations (--depth parameter).

Second, I would rather put the question the other way around: Does hierarchy 
imply dependency or not. In your interpretation it seems this is not the case 
(i.e., modules deeper in the hierarchy might be optional). Not sure whether 
this matches with Maven's interpretation.

I can only tell how we interpret it: We use a mixed flat and hierarchical 
layout. Functional modules are all organized flat, even if they specify 
dependencies (e.g. m1,m2,m3 are all in one directory; m3 might depend on m2 and 
m2 on m1). We use hierarchy actually only for our assemblies. More precisely, 
we have a parent assembly module (packaging pom), say pa, as a sibling to m1, 
..., m3 that has sub modules that are the different assemblies (each assembly 
specifies dependencies to a subset of m1, ... mn, thereby allowing us to 
package whatever we wish to combine).

As far as I remember other projects use similar layouts (e.g., ServiceMix).

I should mention that this layout was created nearly 3 years ago when support 
for hierarchical modules in Eclipse (and other IDEs?) basically didn't exist, 
which was the main motivation. Today the picture seems to have changed and 
maybe we would start over differently. However, we still don't see an urgent 
need to change the layout; it works well for us except for one thing: the 
parent pom is also a sibling to m1,..., which is not ideal if you use a local 
workspace and want to check out different projects into it thereby creating pom 
conflicts. Creating a dedicated folder for the parent pom as a sibling to m1, 
... seems to be a better choice.


HTH,
Thorsten





> Do any tools break with (1) Hierarchical (2) flat modes?
> 
> What is the real-world practical experience here? (not the theory)
> 
> 
> 2/ Using the Apache standard project as parent, I'm getting a warning:
> 
> maven-remote-resources-plugin (goal "process") is ignored by m2e.     
> 
> 
> Warnings are bad - they need to be checked to make sure they are benign on 
> every release and risk hiding warnings that do matter.  Jena is too big to 
> have some 'acceptable' warnings.
> 
> Can this be turned off somehow? I can't see anything but there are lots of 
> places it might be.
> 
>       Andy

Reply via email to