2013-02-22 24 views
5

Tôi hiện đang sử dụng Ant và Maven trong các dự án khác nhau. Để tuân thủ một số quy định, tôi chịu trách nhiệm liệt kê tất cả các giấy phép được sử dụng trong từng dự án.Làm cách nào để biên dịch báo cáo hiển thị tất cả các giấy phép đã sử dụng với Ant?

Với Maven, thật dễ dàng, vì Maven Project Info Reports Plugin tự động tạo báo cáo như vậy.

Vì tôi không thích tìm kiếm giấy phép cho tất cả các JAR của tôi tôi đang sử dụng trong các dự án, tôi muốn biết nếu có một plugin cho Ant, thực hiện nhiệm vụ này.

Cảm ơn trước!

Trả lời

2

Kể từ khi câu hỏi này đã không có bất kỳ gợi ý, gợi ý hoặc thậm chí câu trả lời, tôi bị hack một giải pháp bởi bản thân mình: license-report at github

Các license-report là một nhiệm vụ Ant mà quyết định một giấy phép đối với hầu hết các file jar. Hiện nay, nó tìm kiếm trong các tập tin sau đây để biết thông tin:

  • META-INF/MANIFEST.MF
  • META-INF/LICENSE
  • LICENSE.txt
  • LICENSE
  • license/LICENSE.txt
  • license/LICENSE

Các tệp này được tìm thấy trong một số thư viện Phần mềm nguồn mở/miễn phí phổ biến. Một số thư viện không cung cấp bất kỳ thông tin nào về giấy phép của họ (ví dụ: Spring framework).
Đối với các thư viện này, tác vụ không tìm thấy bất kỳ thông tin nào.

Tôi sẽ cập nhật dự án càng sớm càng tốt để in ra báo cáo xml và html đẹp về các giấy phép đã tìm thấy. Tài liệu và Làm thế nào để sẽ làm theo, quá.

Tôi hiện đang làm việc theo số demo project bằng cách sử dụng tác vụ Ant này.

Dự án demo giờ đây tạo tệp XML có tất cả thông tin thư viện. Chỉ cần khởi động nó (với Ant đã cài đặt) qua ant build.xml trong thư mục gốc của license-report-demo. Nó in ra vị trí của tệp XML được tạo ra. Tôi cũng sẽ bao gồm một XSLT để biến đổi XML thành một báo cáo HTML đẹp. Điều này sẽ đến trong vài ngày tôi nghĩ.

Tôi tạo tệp XML để xử lý thêm (ví dụ: các hệ thống CI như Hudson/Jenkins). Điều này sẽ giúp tạo danh sách tất cả các giấy phép trên các dự án trong một hệ thống trung tâm.

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