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: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org
|