2012-04-02 44 views
12

Tôi có một dự án Maven có 3 mô-đun. Chúng được xây dựng bởi phụ huynh pom.xmlTrong Maven, làm thế nào để chạy một plugin dựa trên một cấu hình cụ thể

Tôi hiện có yêu cầu rằng tôi cần chạy một plugin từ bên trong một trong các mô-đun phụ 'pom.xml tệp dựa trên cấu hình được chọn.

Tôi làm cách nào để chỉ định plugin này sẽ chỉ chạy khi một cấu hình nhất định được sử dụng trong bản dựng?

+0

thể trùng lặp của [Hot để vô hiệu hóa buildnumber-maven-plugin thông qua cmd] (http://stackoverflow.com/questions/9851475/hot-to-disable-buildnumber-maven -plugin-through-cmd) –

Trả lời

18

Xin vui lòng đọc các tài liệu về xây dựng hồ sơ ở đây: http://maven.apache.org/guides/introduction/introduction-to-profiles.html

Bạn về cơ bản cần phải xác định một hồ sơ trong POM của bạn sub-mô-đun và bao gồm rằng plugin trong phần plugin của hồ sơ. . Sử dụng thẻ của plugin execution, bạn có thể xác định mà xây dựng giai đoạn plugin nên chạy trong

Xem ở đây cho một ví dụ: Using maven profiles to control build execution

+0

+1 câu trả lời rõ ràng và consise –

+0

cảm ơn câu trả lời của bạn – mandy

0

gì làm việc trong trường hợp này đối với tôi là sử dụng cấu hình tương tự như trong pom.xml chính bên trong các mô-đun phụ pom.xml.

về cơ bản những gì tôi muốn là để có thể chạy một plugin từ bên trong tiểu module pom.xml, chỉ khi một yếu tố nào đó 'nói X' được chạy trong pom.xml chính

Những gì tôi đã làm là tạo một tiểu sử 'X' bên trong các mô-đun phụ pom.xml và đặt plugin đó bên trong tiểu sử này.

Bây giờ khi cấu hình X được chạy từ tệp pom.xml chính, plugin này từ tệp pom của mô-đun phụ cũng được chạy.

là các cấu hình khác, plugin này không được kích hoạt.

Hy vọng nó sẽ giúp người :)

+0

Bạn có thể đăng một số phần có liên quan của tệp pom.xml, điều đó làm cho bài đăng của bạn trở nên có giá trị hơn! :) – ForceMagic

Các vấn đề liên quan