Ist es möglich, ein bestimmtes Ziel, das an eine maven-Phase gebunden ist, auszusondern und auszuführen?

8

Aktualisiert, um (hoffentlich) klarzustellen : Wenn ein Ziel definiert ist, das während einer bestimmten Phase ausgeführt wird, ist es möglich, das individuelle Ziel auszuführen, ohne alle Phasen zu durchlaufen. Mit anderen Worten, wäre es möglich, das antrun:run -Ziel (das als Teil der Installationsphase definiert ist) auszuführen, ohne Abhängigkeiten, generate-resources, kompilieren, testen, Paket usw. zu erhalten?

Ich verwende das antrun-Plugin, um während der Phase package eine ZIP-Datei zu erstellen und einige Dateien während der Phase install zu löschen und zu kopieren. Ich verstehe, wie man einzelne Maven-Plugin-Ziele ausführt, zum Beispiel: mvn antrun:run . Gibt es jedoch eine Möglichkeit, das Ziel einer bestimmten Ausführung auszuführen? So etwas wie mvn antrun:run:execution-id oder mvn phase:antrun:run ?

Grundsätzlich wäre ich nett, wenn ich Maven sagen könnte, nichts anderes zu tun, als die in der Deployment-Phase definierten ant-Aufgaben auszuführen. Es ist ziemlich langwierig, darauf zu warten, dass Maven durch alle Phasen geht, nur um zu überprüfen, ob die Ant-Aufgaben in der Bereitstellungsphase ordnungsgemäß funktionieren.

%Vor%     
Upgradingdave 12.02.2010, 14:20
quelle

3 Antworten

6
  

Mit anderen Worten: Ist es möglich, das Ziel antrun: run auszuführen (was als Teil der unten beschriebenen Installationsphase definiert ist), ohne Abhängigkeiten, generate-resources, compiling, testing, package usw. zu erhalten?

Nein, ist es nicht. Während Sie ein Plugin konfigurieren können (mit einem <configuration> -Abschnitt unter dem <plugin> -Element) und in der Befehlszeile aufrufen, können Sie keine spezifische ExecutionID aufrufen (und folglich auch <configuration> spezifisch für <execution> ) .

Die einzige Lösung in Ihrem Fall wäre, das antrun-Plugin in einem Profil zu deklarieren, sagen wir my-profile , um den folgenden Teil der Konfiguration zu duplizieren, um das Plugin in diesem Profil zu konfigurieren:

%Vor%

und mit dem richtigen aktiven Profil aufrufen:

%Vor%     
Pascal Thivent 12.02.2010, 19:44
quelle
1

Probieren Sie das exec maven-Plugin ...

aus     
Adnan 12.02.2010 16:31
quelle
0

Zum Beispiel:

Wenn Sie jboss mit maven ausführen, können Sie die Ausgabe der jboss-Konsole nicht sehen, aber ich muss sie anzeigen. Also habe ich eine Java-Datei geschrieben, die server.log (die Ausgabe der Serverkonsole) liest Es ändert sich, um die Änderungen anzuzeigen, so dass es scheint, dass die jboss-Konsole tatsächlich angezeigt wird (ein bisschen hack-ish, aber funktioniert). So komme ich zur Beantwortung Ihrer Frage, während des Pre-Integration-Tests habe ich ein Java-Ziel ausgeführt, welches mein Java-Programm startet. Hier ist, wie mit dem Ausführen von Plugin natürlich:

%Vor%

Sie führen einfach die Installation aus und es wird während des Pre-Integration-Tests ausgeführt. Wenn Sie jedoch nur etwas wie Java ausführen möchten, verwenden Sie das Ausführen-Plugin. Sorry, wenn die Antwort nicht angemessen ist, hatte ich nicht die Geduld, Ihre Frage in Details zu lesen, meine Arbeitszeit ist vorbei .. Prost

    
ant 12.02.2010 16:20
quelle

Tags und Links