ich ein Maven 3 Projekt Berufung folgende Reihenfolge in Hudson integriert habe:Wie kann man vermeiden Tests mehrere Laufzeit WHE Integration Maven Projektes hudson/jenkins
clean tomcat:redeploy site sonar:sonar
Problem ist, dass JUnit 3 Mal ausgeführt wird, hier ist das Ziel Sequenz I erhalten:
>[INFO] [clean:clean {execution: default-clean}]
>[INFO] [gwt:i18n {execution: default}]
>[INFO] [gwt:generateAsync {execution: default}]
>[INFO] [resources:resources {execution: default-resources}]
>[INFO] [compiler:compile {execution: default-compile}]
>[INFO] [checkstyle:check {execution: mycom-check}]
>[INFO] [checkstyle:check {execution: extended-check}]
>[INFO] [resources:copy-resources {execution: default}]
>[INFO] [gwt:i18n {execution: default}]
>[INFO] [gwt:generateAsync {execution: default}]
>[INFO] [resources:resources {execution: default-resources}]
>[INFO] [compiler:compile {execution: default-compile}]
>[INFO] [checkstyle:check {execution: mycom-check}]
>[INFO] [checkstyle:check {execution: extended-check}]
>[INFO] [resources:copy-resources {execution: default}]
>[INFO] [resources:testResources {execution: default-testResources}]
>[INFO] [compiler:testCompile {execution: default-testCompile}]
>[INFO] **[surefire:test {execution: default-test}]**
>[INFO] [gwt:compile {execution: default}]
>[INFO] [war:war {execution: default-war}]
>[INFO] [***tomcat:redeploy*** {execution: default-cli}]
>[INFO] [gwt:i18n {execution: default}]
>[INFO] [gwt:generateAsync {execution: default}]
>[INFO] [resources:resources {execution: default-resources}]
>[INFO] [compiler:compile {execution: default-compile}]
>[INFO] [checkstyle:check {execution: mycom-check}]
>[INFO] [checkstyle:check {execution: extended-check}]
>[INFO] [resources:copy-resources {execution: default}]
>[INFO] [cobertura:instrument {execution: default-instrument}]
>[INFO] [cobertura:instrument {execution: default-instrument}]
>[INFO] [resources:testResources {execution: default-testResources}]
>[INFO] [compiler:testCompile {execution: default-testCompile}]
>[INFO] **[surefire:test {execution: default-test}]**
>[INFO] [cobertura:cobertura {execution: default-cli}]
>[INFO] [resources:testResources {execution: default-testResources}]
>[INFO] [compiler:testCompile {execution: default-testCompile}]
>[INFO] [surefire:test {execution: default-test}]
>[INFO] [***site:site*** {execution: default-site}]
>[INFO] task-segment: [sonar:sonar] (aggregator-style)
>[INFO] [sonar:sonar {execution: default-cli}]
>[INFO] [***sonar:sonar*** {execution: default-sonar}]
>[INFO] [gwt:i18n {execution: default}]
>[INFO] [gwt:generateAsync {execution: default}]
>[INFO] [resources:resources {execution: default-resources}]
>[INFO] [compiler:compile {execution: default-compile}]
>[INFO] [checkstyle:check {execution: mycom-check}]
>[INFO] [checkstyle:check {execution: extended-check}]
>[INFO] [resources:copy-resources {execution: default}]
>[INFO] [cobertura:instrument {execution: default-instrument}]
>[INFO] [resources:testResources {execution: default-testResources}]
>[INFO] [compiler:testCompile {execution: default-testCompile}]
>[INFO] **[surefire:test {execution: default-test}]**
>[INFO] [cobertura:cobertura {execution: default-cli}]
Das ist sehr problematisch, da ein Fehler in Hudson es 3 dreimal zählen macht: http://issues.hudson-ci.org/browse/HUDSON-1557
jedoch in Jenkins fixiert sah: https://issues.jenkins-ci.org/browse/JENKINS-2068
Was mich überrascht ist, dass der "cobertura" Unit Testlauf zweimal durchgeführt wird. Ich bin neu zu maven, so dass ich nicht sicher bin, die Lösung "Lifecycle-Schritte" sehr gut zu verstehen. In der Vergangenheit wurden Zielauflösungen durchgeführt, um nur einmal jedes Ziel auszuführen. Meine Fragen sind:
- Warum werden diese Cobertura Unit Tests zweimal ausgeführt? ist ein Fehler in meiner Konfiguration, in Maven, in einem Plugin?
- Was kann ich testen, um zu verstehen?
- Gibt es allgemein einen Maven-Befehl, der eine Vorschau der Sequenz anzeigt, die ausgeführt wird, ohne die echte Exec auszuführen? Ich habe nichts darüber gefunden, würde es aber sehr nützlich finden.
Danke für Ihre Ratschläge.
Können Sie Ihre pom.xml posten? –