Jestem nowy w Maven, pochodzę ze świata Ant.
Czy można wymienić wszystkie możliwe cele (w tym, powiedzmy, wszystkie wtyczki), które możesz uruchomić?
Widzę, że -g
w Maven 1 była flaga, ale nie jest dostępna w wersji 2.
Jestem nowy w Maven, pochodzę ze świata Ant.
Czy można wymienić wszystkie możliwe cele (w tym, powiedzmy, wszystkie wtyczki), które możesz uruchomić?
Widzę, że -g
w Maven 1 była flaga, ale nie jest dostępna w wersji 2.
Odpowiedzi:
Cel wskazany w linii poleceń jest powiązany z cyklem życia Mavena. Na przykład build
cykl życia (masz również różne cykle clean
i site
) składa się z następujących faz:
validate
: sprawdź, czy projekt jest poprawny i czy wszystkie niezbędne informacje są dostępne.compile
: skompiluj kod źródłowy projektu.test
: przetestuj skompilowany kod źródłowy przy użyciu odpowiedniego środowiska do testów jednostkowych. Testy te nie powinny wymagać pakowania ani wdrażania kodu.package
: weź skompilowany kod i spakuj go w formacie przeznaczonym do dystrybucji, takim jak JAR.integration-test
: Przetwórz i wdróż pakiet, jeśli to konieczne, w środowisku, w którym można uruchomić testy integracji.verify
: uruchom wszelkie kontrole, aby upewnić się, że pakiet jest ważny i spełnia kryteria jakościinstall
: zainstaluj pakiet w lokalnym repozytorium, aby użyć go jako zależności w innych projektach lokalnie.deploy
: wykonane w środowisku integracji lub wydania, kopiuje ostateczny pakiet do zdalnego repozytorium w celu udostępnienia innym programistom i projektom.Listę "podstawowych" wtyczek można znaleźć tutaj , ale jest też wiele innych wtyczek, takich jak te z kodem, tutaj .
Czy można wymienić wszystkie możliwe cele (w tym, powiedzmy, wszystkie wtyczki), które można uruchomić?
Maven nie ma nic do tego wbudowanego, chociaż lista faz jest skończona (lista celów wtyczek nie jest, ponieważ lista wtyczek nie jest).
Ale możesz ułatwić sobie sprawę i wykorzystać moc uzupełniania bash (używając cygwin, jeśli jesteś w systemie Windows), jak opisano w Przewodniku po automatycznym uzupełnianiu Maven 2.x przy użyciu BASH (ale zanim wybierzesz skrypt z tego przewodnika, przeczytaj dalej ).
Aby wszystko działało, najpierw postępuj zgodnie z tym przewodnikiem, aby skonfigurować zakończenie bash na komputerze. Następnie pora zdobyć skrypt dla Maven2 i:
maven
w Ubuntu), który można pobrać z HEAD. Po prostu najlepszy .Poniżej przedstawiam to, co otrzymuję tylko po to, aby zilustrować wynik:
$ mvn [tab] [tab] Wyświetlić wszystkie 377 możliwości? (t lub n) mrówka: mrówka mrówka: czysty mrówka: pomoc antrun: help antrun: biegnij archetyp: pełzanie archetyp: stwórz archetyp: utwórz z projektu archetyp: generuj archetyp: pomoc montaż: montaż zespół: katalog zestaw: pojedynczy katalog montaż: pomoc montaż: pojedynczy ...
Oczywiście nigdy nie przeglądam 377 możliwości, używam dokończenia. Ale to daje wyobrażenie o wielkości listy „a” :)
Maven Shell
narzędzie zapewnia automatyczne uzupełnianie, które może być przydatne w tym miejscu?
mvnsh
nie zapewnia uzupełnienia (przynajmniej nie w wersji, którą mam na swoim komputerze). Sprawdziłem przed odpowiedzią :)
Jeśli używasz IntelliJ IDEA, możesz przeglądać wszystkie cele / zadania maven (w tym wtyczki) w Maven Projects
zakładce:
Upraszczajmy to:
Cykle życia Mavena: 1. Wyczyść 2. Domyślnie (kompilacja) 3. Witryna
Fazy Maven domyślnego cyklu życia: 1. Sprawdź poprawność 2. Kompiluj 3. Testuj 4. Pakiet 5. Weryfikuj 6. Zainstaluj 7. Wdróż
Uwaga: nie mieszaj celów mavena z cyklem życia mavena ani nie daj się im mylić.
Zobacz Maven Build Lifecycle Podstawy 1
Cykl życia kompilacji składa się z faz
Każdy z tych cykli życia kompilacji jest definiowany przez inną listę faz kompilacji, przy czym faza kompilacji reprezentuje etap w cyklu życia.
Na przykład domyślny cykl życia składa się z następujących faz (pełną listę faz cyklu życia można znaleźć w Odniesieniu do cyklu życia):
Te fazy cyklu życia (plus inne fazy cyklu życia nie pokazane tutaj) są wykonywane sekwencyjnie, aby zakończyć domyślny cykl życia. Biorąc pod uwagę powyższe fazy cyklu życia, oznacza to, że gdy używany jest domyślny cykl życia, Maven najpierw zweryfikuje projekt, a następnie spróbuje skompilować źródła, uruchomić je z testami, spakować pliki binarne (np. Jar), uruchomić testy integracji względem tego pakiet, zweryfikuj testy integracji, zainstaluj zweryfikowany pakiet w lokalnym repozytorium, a następnie wdróż zainstalowany pakiet w zdalnym repozytorium.
Źródło: https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html