wake-up-neo.com

Was genau macht mvn install in maven?

Ich habe gerade angefangen, Maven zu benutzen und mir wurde gesagt, dass ich mvn install in einem bestimmten Verzeichnis.

Was macht mvn install genau tun?

Ich denke, es sieht aus nach pom.xml im aktuellen Ordner und folgt den Anweisungen in dieser Datei. Ist das korrekt?

148
Rajeshwar

Wie Sie vielleicht wissen, handelt es sich bei Maven um ein von Apache bereitgestelltes Build-Automatisierungstool, das mehr als nur Abhängigkeiten verwaltet. Wir können es zu einem Peer von Ant und Makefile machen, das alle erforderlichen Abhängigkeiten herunterlädt.

Auf einem mvn install Rahmt es einen Abhängigkeitsbaum basierend auf der Projektkonfiguration pom.xml Für alle Unterprojekte unter dem Super-POM pom.xml Ein und lädt/kompiliert alle benötigte Komponenten in einem Verzeichnis mit dem Namen .m2 im Ordner des Benutzers. Diese Abhängigkeiten müssen aufgelöst werden, damit das Projekt fehlerfrei erstellt werden kann, und mvn install Ist ein Dienstprogramm, mit dem die meisten Abhängigkeiten heruntergeladen werden können.

Darüber hinaus gibt es in Maven noch andere Hilfsprogramme wie dependency:resolve, Die in bestimmten Fällen separat verwendet werden können. Der Build-Lebenszyklus des MVN ist wie folgt:

  1. process-resources
  2. compile
  3. process-test-resources
  4. test-compile
  5. test
  6. package
  7. install
  8. deploy

Die Testphase dieses MVN kann mit einem Flag -DskipTests=true Ignoriert werden.

99
uniqrish

Haben Sie sich eines der Maven-Dokumente angesehen, zum Beispiel das Maven-Installations-Plugin-Dokument ?

Kurzfassung: Das Projekt wird erstellt und in Ihrem lokalen Repository installiert.

30
Dave Newton

Es werden alle Ziele aller konfigurierten Plugins ausgeführt, die einer beliebigen Phase des Standardlebenszyklus bis zur "Installations" -Phase zugeordnet sind:

https://maven.Apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference

7
Puce

Das install:install - Ziel wird vom "Apache Maven Install Plugin" bereitgestellt:

Apache Maven Install Plugin

Das Installations-Plugin wird während der Installationsphase verwendet, um dem lokalen Repository Artefakte hinzuzufügen. Das Installations-Plugin verwendet die Informationen im POM (groupId, artifactId, version), um den richtigen Speicherort für das Artefakt im lokalen Repository zu bestimmen.

Das lokale Repository ist der lokale Cache, in dem alle für den Build erforderlichen Artefakte gespeichert werden. Standardmäßig befindet es sich im Home-Verzeichnis des Benutzers (~/.m2/repository), Der Speicherort kann jedoch mit dem Element ~/.m2/settings.xml In <localRepository> Konfiguriert werden.

- Apache Maven Install Plugin - Einführung .

Das genaue Ziel ist jedoch:

install:install Wird verwendet, um das Hauptartefakt des Projekts (JAR, WAR oder EAR), sein POM und alle angehängten Artefakte (Quellen, Javadoc usw.), die von einem bestimmten Projekt erzeugt wurden, automatisch zu installieren.

- Apache Maven Install Plugin - Einführung .

Weitere Details zum Ziel finden Sie auf der Seite Apache Maven Install Plugin - install: install .

Weitere Informationen zum Build-Lebenszyklus im Allgemeinen und zu der Position, die das Ziel im Build-Lebenszyklus hat, finden Sie auf der Seite Maven - Einführung in den Build-Lebenszyklus .

3
Sergey Brunov

-DskipTests=true ist eine Kurzform von -Dmaven.test.skip=true

Nehmen Sie Änderungen in Setting.xml in Ihrem . M2 Ordner vor. Sie können den Link zum lokalen Repository verwenden, damit die heruntergeladenen Gläser nicht immer wieder heruntergeladen werden.

<url>file://C:/Users/admin/.m2/repository</url>
 </repository>
2
Jyoti Prakash

kurze Antwort

mvn install

  • fügt alle in pom angegebenen Artefakte (Abhängigkeiten) zum lokalenRepository (aus fernen Quellen) hinzu.
0
Daniel Perník