On 12/3/06, Ole Ersoy <ole_ersoy@yahoo.com> wrote:

I thought about your scenario a little more.

Here's your scenario:

Level0 -> L2 -> L3

with a test in each level, and each test depends on
a very specific version

This is where I hung for a sec.
>with a test in each level, and each test depends on
>a very specific version.

Then I thought about it like this:


     We have L0 project
     with a dependency in dependencyManagement
     that has a version 2.1.1.


     A project A at L1 uses this dependency.

correct, so no need to declare the version, just declare the dependency in L1 pom.xml

     Project B at L1 overrides this dependency
     and sets the version to 3.2.

Ok, so you must declare the dependency AND the version in  B pom.xml

     Project C is a parent project and it
     has two child projects, D and F.

I guess that you don't declare a dependencyManagment in C pom.xml file

     Project D needs version 3.3 of the
     dependency.  Project F does not
     want the dependency at all.


     Project D just overrides and puts in
     version 3.3 like project B did.

Correct. And if project F is nut using the dependency, then  you don't declare it in its pom.xml.

I assume you meant something like this?

more or less

I also assume that there are no tests in projects
with packaging of type pom?

 Not usre I understand the question

If that's the case, then I think we should be fine.

Have you had any issues with this type of structure?

I just try to figure out which structure works, in any case, and which is not, and if there are some workaround. This is obviously a necessary task, as, for instance, the eclipse plugin is not able to cope with this simple needs.

- Ole

Thanks !