2009-02-09 36 views
20

Tôi đang cố tạo một plugin mới để đóng gói dự án mới nhất của mình. Tôi đang cố gắng để có plugin này phụ thuộc vào maven-phụ thuộc-plugin để sao chép tất cả các dự án phụ thuộc của tôi.Plugin Maven thực hiện một plugin khác

Tôi đã thêm phụ thuộc này vào phần bổ trợ của plugin, nhưng tôi không thể thực hiện nó.

Tôi có chú thích này trong plugins của tôi Mojo chính:

@execute goal="org.apache.maven.plugins:maven-dependency-plugin:copy" 

Tôi đã thử một vài cái tên khác cho mục tiêu, như phụ thuộc: sao chép và chỉ bản sao nhưng tất cả đều kết thúc với một thông báo cho biết rằng mục tiêu bắt buộc không được tìm thấy trong plugin của tôi. Tôi đang làm gì sai?

Thứ cấp là nơi tôi cung cấp thông tin cấu hình cho plugin phụ thuộc?

Trả lời

36

Sử dụng Maven Mojo executor bởi Don Brown của danh tiếng Atlassian để chạy bất kỳ plugin tùy ý nào khác.

Các Mojo Executor cung cấp một cách để đến thực hiện Mojos khác (plug-in) trong vòng 2 Plugin Maven, cho phép bạn dễ dàng tạo Maven 2 plugin là gồm các plugin khác.

+0

+1 thật tuyệt, chưa bao giờ nghe nói về điều đó trước đây! –

+4

Xem http://stackoverflow.com/questions/4243686/how-to-programatically-invoke-a-maven-dependency-plugin/5761554#5761554 để biết phiên bản cập nhật của Mojo Executor cho Maven 3. – Gili

1

Bạn đã cố gắng tạo loại bao bì của riêng mình chưa? Sau đó, bạn có thể xác định ánh xạ vòng đời của riêng mình, tức là gắn các mục tiêu vào các giai đoạn. Trong trường hợp này, bạn có thể ràng buộc sự phụ thuộc: mục tiêu sao chép-phụ thuộc vào giai đoạn đóng gói của bạn và bạn không phải quấn mục tiêu vào Mojo của riêng bạn.

Xem thêm: How do I create a new packaging type for Maven?

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