Ausführen einer Aufgabe post maven install

8

Ich möchte einen einfachen Exec-Befehl nach der Maven-Installationsphase ausführen. Was ist der einfachste Weg dies zu erreichen? (ohne neue Plugins hinzuzufügen)

    
Priyank 05.01.2010, 09:48
quelle

2 Antworten

13

Wenn Sie diesen Befehl als Teil des normalen Build-Lebenszyklus ausführen möchten, gibt es keine andere Möglichkeit als das exec -Ziel in der Phase install zu binden:

%Vor%

Ich habe einen einfachen Test unter Verwendung der obigen Konfiguration (mit ls als "COMMAND") mit einem neu erstellten Maven-Projekt durchgeführt und das Ausführen von mvn install erzeugt die folgende Ausgabe:

%Vor%

Wie wir sehen, wird der Befehl am Ende der Phase install ausgeführt (nach der Kopie des Artefakts in das lokale Repository).

Und wenn Sie das Snippet wirklich nicht zu Ihrem Pom hinzufügen wollen, müssen Sie exec:exec nach install explizit auf der Kommandozeile aufrufen, wie von whaley vorgeschlagen.

    
Pascal Thivent 05.01.2010, 18:40
quelle
3

Der standardmäßige Maven-Lebenszyklus endet mit den install und Bereitstellungszielen - es gibt keine Vor- und Nachversionen dieser Ziele.

Mögliche Optionen wären:

  • Binden Sie das exec: exec mojo mit der deploy-Phase. Ich warne Sie vor dieser Idee, da die Bereitstellungsphase eigentlich dazu gedacht ist, Artefakte in einem Remote-Maven-Repository bereitzustellen.

  • Führen Sie das exec: exec-Mojo nach dem Installationsziel in Ihrem mvn-Aufruf aus ... z. B.:

    mvn clean install exec: exec -Dexec.executable="IhrKommando" -Dexecs.args="Argumente"

  • Wenn Sie ein Projekt mit mehreren Modulen haben, erstellen Sie am Ende Ihrer & lt; Module & gt; und bind exec: exec an eines der üblichen Ziele in diesem Modul. Dies wird dazu führen, dass dieses bestimmte Modul zuletzt ausgeführt wird, wobei andere Kriterien berücksichtigt werden, die der Reaktor berücksichtigt isn ' t erfüllt. Eine gemeinsame Strategie, die ich bei Maven-Projekten verwende, an denen ich arbeite, ist: "Wenn Sie Zweifel haben, erstellen Sie ein anderes Modul".

whaley 29.05.2015 10:18
quelle

Tags und Links