У меня есть следующие проекты, организованные в виде плоской структуры:
parentProject
+-pom.xml
projectWeb <depends on libraryA and libraryB>
+-pom.xml
libraryA
+-pom.xml
libraryB
+-pom.xml
Pom.xml внутри parentProject имеет ссылки на другие модули и используется для наследования и dependencyManagement, вот фрагмент:
<project>
....
<modules>
<module>../projectWeb</module>
<module>../libraryA</module>
<module>../libraryB</module>
</modules>
<dependencyManagement>
...
</dependencyManagement>
<build>
...
</build>
....
</project>
В Jenkins у меня есть одно задание maven для каждого проекта, и оно отлично работает, когда я создаю parentProject, т.е. строит все проекты, указанные в разделе modules
. Проблема, с которой я сталкиваюсь, заключается в том, что когда я фиксирую в SVN изменение в libraryA
, я ожидал, что после сборки libraryA будет запущена перестройка в projectWeb
, но этого не произошло. Кто-нибудь знает, что я делаю не так?
Заранее спасибо.
ИЗМЕНИТЬ
Когда я удаляю раздел modules
из parentProject\pom.xml
, он работает должным образом, но я теряю преимущество агрегирования, связанное с наличием родительского pom.