I have a maven project infrastructure like this:
/trunk/all/pom.xml
/trunk/all/libs/lib1/pom.xml
/lib2/pom.xml
...
/trunk/all/projects/p1/pom.xml
/p2/pom.xml
...
You see, I have a lot of libraries and a lot of projects using these libraries.
All this is combined to one multi module project, because I like to
- import the top project into eclipse and have all my libraries and projects available at once
- only do a single
mvn test
to compile and test all my code after I've done some global refactorings.
Currently, all my modules are version 1.0-SNAPSHOT
.
Now I want to release project p2
and all libs p2
uses (e.g. lib1
and lib2
) to version 1.0
. After that I do some code modifications on lib1
, but none on lib2
.
I want the next release of p2
being version 1.1
, using lib1
in version 1.1
(it was modified since the last release), but lib2
still in version 1.0
(since it wasn't modified).
More general: If I do a release, I want to increase the minor numbers of the project being released and of all changed libraries since the last release.
Question
Do I have to take care for all the module versions by myself or is there a plugin that is able to do the required work for me?