2011-11-14 34 views
5

Tôi tự hỏi liệu có thể lấy thông tin về tất cả các phụ thuộc cấp đầu tiên của dự án maven của tôi hay không. Tôi cần thông tin sau: tên, nhà cung cấp, phiên bản, loại giấy phép, URL tham chiếu, mô tả. Tất cả các thông tin này được lưu trữ trong pom.xml của mỗi gói. Vấn đề là chúng tôi có hệ thống phân cấp khoảng 20 dự án có hàng trăm phụ thuộc liên tục bị thay đổi.nhận thông tin về phụ thuộc maven

Tôi biết về maven dependency plugin. Tôi đã chạy mvn dependency:list và trích xuất danh sách các gói sử dụng kết hợp của grep s và sed s. Nhưng tôi cần thông tin giấy phép và URL. Tôi có thể thực hiện trình phân tích cú pháp của riêng tôi phân tích cú pháp pom.xml cho các gói thú vị và trích xuất thông tin này nhưng có vẻ như đã có sẵn một thứ gì đó sẵn sàng để sử dụng. Báo cáo dependecy

Trả lời

1

Điều tốt nhất là tạo ra một trang web với sự hỗ trợ của các plugin maven-dự án-info-báo cáo đó sẽ tạo ra các thông tin cần thiết. Xem here làm ví dụ. Câu hỏi duy nhất là bạn đang sử dụng phiên bản nào của maven? Hơn nữa, tôi khuyên bạn nên xem maven-license-plugin Nếu bạn cần giới hạn giấy phép theo bất kỳ cách nào, bạn có thể xem maven-license-verifier plugin.

+0

Cảm ơn bạn, nó hoạt động. Nhưng tôi có một hệ thống phân cấp lớn các dự án và plugin này trả về các phụ thuộc cho mỗi dự án và không tuyên truyền sau đó lên, tức là dự án cấp trên không có phụ thuộc. Tôi muốn báo cáo tất cả các phụ thuộc với nhau. Có cách nào để làm việc này không? – AlexR

+1

Có thể bạn có thể thiết lập dự án tổng hợp (pom.xml) với các mục mô-đun của dự án và cố gắng chạy báo cáo về dự án này ... trực tiếp không có cách nào ... – khmarbaise

+0

Thật không may đây là những gì tôi đã có .. . – AlexR

2

Các maven có thể hữu ích cho bạn: maven-project-info-reports-plugin

+0

Cảm ơn bạn, nó hoạt động. Nhưng tôi có một hệ thống phân cấp lớn các dự án và plugin này trả về các phụ thuộc cho mỗi dự án và không tuyên truyền sau đó lên, tức là dự án cấp trên không có phụ thuộc. Tôi muốn báo cáo tất cả các phụ thuộc với nhau. Có cách nào để làm việc này không? – AlexR