I can't speak for what M2 does (but I'm hoping there's a plugin that
can, for the product project, use the transitive dependencies to point
out any out-of-sync versions for the same group/artifact ids).  However,
I can say that M1 does indeed let you put version information on a
snapshot.  We do it all the time here.  Instead of saying the version is
SNAPSHOT, just say it is 1.4.0-SNAPSHOT.

..David..
 

-----Original Message-----
From: Alessandro Evangelista [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, September 14, 2005 5:39 AM
To: [email protected]
Subject: M2: Product Modularization, transitive dependencies and
versioned snapshots

I have being using maven 1 for sometime now. I am looking to upgrade to
maven 2 sometime soon to benefit from the new transitive dependencies
mechanism.

I wonder whether the new maven would fit my "release engineering" model
where a product is made of many modules possibly with
inter-dependencies.

Here an example.

Product product-X is mode or modules module-A, module-B, module-C. 
module-A, module-B and module-C are defined as 3 maven projects.

Products and modules have their own versions. For example,
product-X-1.2.3 - which is the version 1.2.3 of product-X - depends on
module-A-1.0.0, module-B-2.3.2 and module-C-1.4.2. module-A and module-B
depends module-C.

Now consider the scenario where a fix is made on module-C and a the new
version 1.4.3 of module-C is released.
As a consequence a new version of product-X should be released as well: 
product-X-1.2.4. The fact that module-A and module-B depends on module-C
would force the further release of module-A-1.0.1,
module-B-2.3.3 even if no code changed
in module-A and module-B to update the dependency of both module-A and
module-B from module-C-1.4.3.

In general, if two or modules depends on another module module-Z and
they are included in the same product, is there mechanism to ensure that
they all use/depend on the same version of module-Z?

The absence of such mechanism would make versioning very cumbersome and
leave the possibility of inconsistent dependencies.

On another matter, with maven 1 snapshot jars are not versioned. There
is no way to express that a jar is a snapshot of say
module-Z-1.2.3 rather than module-Z-1.4.0. Is there any mechanism in
place in maven 2 to discriminate between snapshot versions?

Many thanks for your feedback.



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


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

Reply via email to