2011-11-14 21 views
5

Zastanawiam się, czy możliwe jest uzyskanie informacji o wszystkich zależności pierwszego poziomu mojego projektu maven. Potrzebuję następujących informacji: nazwa, dostawca, wersja, typ licencji, adres URL, opis. Wszystkie te informacje są przechowywane w pom.xml każdego pakietu. Problem polega na tym, że mamy hierarchię około 20 projektów, które mają kilkaset zależności, które ciągle się zmieniają.uzyskiwanie informacji o zależnościach maven

Wiem o maven dependency plugin. Uruchomiłem mvn dependency:list i wyodrębniłem listę pakietów, używając kombinacji grep s oraz sed s. Ale potrzebuję informacji o licencji i adresu URL. Mogę zaimplementować mój własny parser, który analizuje pom.xml dla interesujących pakietów i wyodrębnia te informacje, ale wydaje się, że powinno istnieć coś gotowego do użycia.

Odpowiedz

1

Najlepszą rzeczą jest to, aby stworzyć stronę z pomocą wtyczki Maven-projekt-info-raportu, który stworzy potrzebne informacje. Przykładem jest here. Pytanie tylko, którą wersję maven używasz? Ponadto proponuję przejrzeć maven-license-plugin Jeśli chcesz ograniczyć licencje w jakikolwiek sposób, możesz spojrzeć na maven-license-verifier plugin.

+0

Dziękuję, to działa. Ale mam dużą hierarchię projektów, a ta wtyczka zwraca zależności na projekt i nie propaguje w górę, tzn. Projekt wyższego poziomu nie ma zależności. Chcę uzyskać raport wszystkich zależności razem. Czy jest jakiś sposób na zrobienie tego? – AlexR

+1

Może chcesz skonfigurować projekt agregacji (pom.xml) z wpisami modułów twojego projektu i spróbować uruchomić raport o tym projekcie ... bezpośrednio nie ma mowy ... – khmarbaise

+0

Niestety to jest to, co już mam .. . – AlexR

2

maven raport dependecy mogą być przydatne dla Ciebie: maven-project-info-reports-plugin

+0

Dziękuję, to działa. Ale mam dużą hierarchię projektów, a ta wtyczka zwraca zależności na projekt i nie propaguje w górę, tzn. Projekt wyższego poziomu nie ma zależności. Chcę uzyskać raport wszystkich zależności razem. Czy jest jakiś sposób na zrobienie tego? – AlexR

Powiązane problemy