2012-11-29 6 views
12

Ich verwende Jenkins, um mein Projekt zu erstellen, das mehrere Module hat. Dieses Projekt hat eine Wurzel pom.xml, die alle Module unter diesem Projekt erstellt. Ich gebe diese pom.xml als Root-POM an.Wie testet man für ein bestimmtes Modul unter einem Projekt in Jenkins durch Maven?

Jetzt möchte ich Tests als "Post-Build-Schritt" ausführen. Aber ich möchte nicht alle Tests unter allen Modulen durchführen. Ich möchte Tests nur unter einem bestimmten Modul ausführen.

Ich habe versucht, mit dem Shell-Befehl das Verzeichnis zu dem Modul, für die Tests ausgeführt werden müssen, ändern und dann Maven auslösen. Ich habe auch versucht, die Option -f zu verwenden, um die pom.xml für dieses bestimmte Modul anzugeben. Beide Schritte funktionieren nicht.

Bitte helfen Sie mir Jungs bei der Lösung dieses Problems.

Dank

Antwort

18

Gerade aus dem Wurzelpfad laufen:

mvn -pl submodule test 

protip: mvn --help

+1

fand ich, dass -f und -pl verhielten sich gleich. – orbfish

+0

Sie benötigen a: vor der artifactId, zum Beispiel: mvn -pl: artifactId test –