Ich bin neu in Maven und komme aus der Ameisenwelt.
Ist es möglich, alle möglichen Ziele (einschließlich beispielsweise aller Plugins) aufzulisten, die Sie ausführen können?
Ich kann sehen, dass es -g
in Maven 1 früher eine Flagge gab, aber diese ist in Version 2 nicht verfügbar.
Antworten:
Das Ziel, das Sie in der Befehlszeile angeben, ist mit dem Lebenszyklus von Maven verknüpft . Beispielsweise besteht der
build
Lebenszyklus (Sie haben auch dieclean
undsite
Lebenszyklen, die unterschiedlich sind) aus den folgenden Phasen:validate
: Überprüfen Sie, ob das Projekt korrekt ist und alle erforderlichen Informationen verfügbar sind.compile
: Kompilieren Sie den Quellcode des Projekts.test
: Testen Sie den kompilierten Quellcode mit einem geeigneten Unit-Test-Framework. Für diese Tests sollte nicht erforderlich sein, dass der Code gepackt oder bereitgestellt wird.package
: Nehmen Sie den kompilierten Code und verpacken Sie ihn in seinem verteilbaren Format, z. B. einer JAR.integration-test
: Verarbeiten und Bereitstellen des Pakets bei Bedarf in einer Umgebung, in der Integrationstests ausgeführt werden können.verify
: Führen Sie alle Überprüfungen durch, um sicherzustellen, dass das Paket gültig ist und die Qualitätskriterien erfülltinstall
: Installieren Sie das Paket im lokalen Repository, um es als Abhängigkeit in anderen Projekten lokal zu verwenden.deploy
: Wird in einer Integrations- oder Release-Umgebung ausgeführt und kopiert das endgültige Paket in das Remote-Repository, um es mit anderen Entwicklern und Projekten zu teilen.Sie können die Liste der „Kern“ Plugins finden Sie hier , aber es gibt viele andere Plugins, wie die Codehaus diejenigen, hier .
quelle
Maven hat dafür nichts eingebaut, obwohl die Liste der Phasen endlich ist (die Liste der Plugin-Ziele ist nicht, da die Liste der Plugins nicht ist).
Sie können die Dinge jedoch vereinfachen und die Möglichkeiten der Bash-Vervollständigung (unter Verwendung von Cygwin unter Windows) nutzen, wie im Handbuch zur automatischen Vervollständigung von Maven 2.x mit BASH beschrieben (bevor Sie das Skript aus dieser Anleitung auswählen, lesen Sie weiter ).
Befolgen Sie zunächst diese Anleitung, um die Bash-Fertigstellung auf Ihrem Computer einzurichten. Dann ist es Zeit, ein Skript für Maven2 zu bekommen und:
maven
Ubuntu enthalten ist), das Sie vom HEAD herunterladen können . Es ist einfach das Beste .Im Folgenden ist Folgendes aufgeführt, um das Ergebnis zu veranschaulichen:
Natürlich stöbere ich nie in den 377 Möglichkeiten, ich benutze die Vervollständigung. Dies gibt Ihnen jedoch eine Vorstellung von der Größe einer "a" -Liste :)
Ressourcen
quelle
Maven Shell
Tool eine automatische Vervollständigung, die hier nützlich sein könnte?mvnsh
bietet keine Vervollständigung (zumindest nicht in der Version, die ich auf meinem Computer habe). Ich habe vor der BeantwortungWenn Sie IntelliJ IDEA verwenden, können Sie alle Maven-Ziele / Aufgaben (einschließlich Plugins) auf der
Maven Projects
Registerkarte durchsuchen :quelle
Machen wir es uns ganz einfach:
Maven-Lebenszyklen: 1. Reinigen 2. Standard (Build) 3. Site
Maven-Phasen des Standardlebenszyklus: 1. Validieren 2. Kompilieren 3. Testen 4. Paket 5. Überprüfen 6. Installieren 7. Bereitstellen
Hinweis: Mischen Sie sich nicht mit Maven-Zielen mit dem Maven-Lebenszyklus.
Siehe Maven Build Lifecycle Basics 1
quelle
Ein Build-Lebenszyklus besteht aus Phasen
Jeder dieser Build-Lebenszyklen wird durch eine andere Liste von Build-Phasen definiert, wobei eine Build-Phase eine Phase im Lebenszyklus darstellt.
Der Standardlebenszyklus umfasst beispielsweise die folgenden Phasen (eine vollständige Liste der Lebenszyklusphasen finden Sie in der Lebenszyklusreferenz):
Diese Lebenszyklusphasen (plus die anderen hier nicht gezeigten Lebenszyklusphasen) werden nacheinander ausgeführt, um den Standardlebenszyklus abzuschließen. In Anbetracht der obigen Lebenszyklusphasen bedeutet dies, dass Maven bei Verwendung des Standardlebenszyklus zuerst das Projekt validiert, dann versucht, die Quellen zu kompilieren, diese für die Tests auszuführen, die Binärdateien (z. B. jar) zu verpacken und Integrationstests dagegen auszuführen Paket, überprüfen Sie die Integrationstests, installieren Sie das verifizierte Paket im lokalen Repository und stellen Sie das installierte Paket in einem Remote-Repository bereit.
Quelle: https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html
quelle