Frage

Ich arbeite an einem Maven Multi-Module Projekt. Ich mag ein bestimmtes Modul bauen und die Unit-Tests überspringen, um den Build-Prozess zu beschleunigen.

Ich habe versucht, die folgenden:

mvn reactor:make -Dmake.folders=search -Dgoals=package,-DskipTests

mvn reactor:make -Dmake.folders=search -Dgoals=package -Dmaven.test.skip=True

Allerdings bedeutet dies keine Auswirkungen auf alle haben. Irgendwelche Hinweise?

War es hilfreich?

Lösung

Ihre erste Zeile sieht aus wie die richtige Idee, aber anstatt -Dgoals sollten Sie -Dmake.goals verwenden.

Aus dem Reaktor Plugin Beispiele :

  

Der Plugin Reaktor startet einen zweiten   Kopieren von Maven seine Magie zu tun. Dies   Kopie von Maven muss nicht unbedingt   alle Flags und Optionen, die Sie   übergeben Sie Ihre erste Kopie von Maven,   einschließlich des --debug Flag, system   Eigenschaften und -DskipTests.

     

Sie können zusätzliche Argumente übergeben zu   der erzeugte Maven durch die Behandlung von ihnen als   Ziele mit -Dmake.goals, wie folgt aus:

mvn reactor:resume -Dmake.folders=barBusinessLogic -Dmake.goals=install,-DskipTests
     

Mit anderen Worten sind die „Ziele“ just   zusätzliche Befehlszeilenparameter übergeben   zu den erzeugten Maven; sie dies nicht tun   unbedingt sein müssen „Ziele.“

     

Wenn Sie wirklich Lust zu bekommen, Sie   kann es vorziehen, den Reaktor nur Trockenlauf   Plug-in -Dmake.printOnly Modus,   oben beschrieben. Das wird auszudrucken   der Befehl, dass das Plugin hätte   zu bauen verwendet, aber Sie können zwicken, dass   Befehlszeile Inhalt Ihres Herzens!

Andere Tipps

In Anbetracht der Projektstruktur

/
  A/pom.xml
  B/pom.xml
  C/pom.xml
  D/pom.xml
  E/pom.xml
  pom.xml (parent pom file that includes A,B,C,D,E modules)

Ähnlich wie bei der

mvn reactor:make -Dmake.folders=C,D,E -Dgoals=package -Dmaven.test.skip=True

Obwohl ich bin mir nicht sicher, ob mein Ansatz ist genau das, was der Reaktor-Plugin tut, aber ich fand die folgende Vorgehensweise für mich gut genug gearbeitet

mvn -pl=C,D,E -DskipTests=true package

Haben Sie versucht, einschließlich der Option -Dmaven.test .skip = true (beachten Sie den Fall) zu Ihrem Argument Befehlszeile Sie laufen? Wie Java, ist Maven Groß- und Kleinschreibung. Aber im Allgemeinen, können Sie einfach auf den = true Teil und das sollte auch bewirken, dass die Tests übersprungen werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top