Как работать с Maven-версиями в многомодульном проекте?
У меня есть инфраструктура проекта Maven, как это:
/trunk/all/pom.xml
/trunk/all/libs/lib1/pom.xml
/lib2/pom.xml
...
/trunk/all/projects/p1/pom.xml
/p2/pom.xml
...
Видите ли, у меня есть много библиотек и множество проектов, использующих эти библиотеки.
Все это объединено в один многомодульный проект, потому что мне нравится
импортировать лучший проект в Eclipse, чтобы все мои библиотеки и проекты были доступны одновременнотолько сделать одинmvn test
скомпилировать и протестировать весь мой код после того, как я выполнил глобальный рефакторинг.В настоящее время все мои модули являются версией1.0-SNAPSHOT
.
Теперь я хочу выпустить проектp2
и все либыp2
использует (например,lib1
а такжеlib2
) к версии1.0
, После этого я делаю некоторые модификации кода наlib1
, ноникто наlib2
.
Я хочу следующий выпускp2
Быть версией1.1
, с помощьюlib1
в версии1.1
(он был изменен с момента последнего выпуска), ноlib2
еще в версии1.0
(так как это не было изменено).
В более общем плане: если я делаю релиз, я хочу увеличить второстепенные цифры проекта, который выходит, и всегоизменено библиотеки с момента последнего выпуска.
ВопросДолжен ли я сам позаботиться обо всех версиях модуля или есть плагин, который может выполнить необходимую работу за меня?