tôi có các dự án sau được tổ chức một cách có cấu trúc phẳng:Maven dự án đa mô-đun và Jenkins
parentProject
+-pom.xml
projectWeb <depends on libraryA and libraryB>
+-pom.xml
libraryA
+-pom.xml
libraryB
+-pom.xml
Các pom.xml bên trong parentProject có tham chiếu đến các module khác và nó được sử dụng để thừa kế và dependencyManagement, đây là một đoạn trích:
<project>
....
<modules>
<module>../projectWeb</module>
<module>../libraryA</module>
<module>../libraryB</module>
</modules>
<dependencyManagement>
...
</dependencyManagement>
<build>
...
</build>
....
</project>
Trong Jenkins tôi có một công việc maven cho từng dự án, và nó hoạt động tốt khi tôi xây dựng parentProject, tức là. xây dựng mọi dự án được tham chiếu trong phần modules
. Vấn đề mà tôi có là khi tôi cam kết với SVN một sự thay đổi trong libraryA
, tôi hy vọng rằng sau khi xây dựng libraryA, xây dựng lại để projectWeb
được khởi chạy, nhưng điều đó đã không xảy ra. Bất cứ ai cũng biết tôi đang làm gì sai?
Xin cảm ơn trước.
EDIT
Khi tôi loại bỏ các phần modules
từ parentProject\pom.xml
, nó hoạt động như espected, nhưng tôi mất lợi thế kết hợp của việc có một pom mẹ.
Cảm ơn bạn đã trả lời, nhưng khi tôi đặt câu hỏi đã chỉnh sửa, Nếu tôi xóa các mô-đun khỏi pom cha mẹ, các bản dựng được kích hoạt như mong đợi, tức là nếu tôi xây dựng 'libraryA' thì' proyectWeb' được xây dựng tự động mà không có cấu hình bạn đã đề cập. – sivainvi