2016-06-09 9 views
0

Ich möchte jetty-maven-plugin als Plattform nutzen, auf der ich meine Anwendungen mit externen Assambled Wars testen kann.jetty-maven-plugin mit run-ward stoppt die maven execution

Also habe ich meine Maven-Anlegesteg-Plugin mit folgenden Konfiguration bis:

    <plugin> 
         <groupId>org.eclipse.jetty</groupId> 
         <artifactId>jetty-maven-plugin</artifactId> 
         <configuration> 

          <war>${project.build.directory}/some.war</war> 

         </configuration> 
         <executions> 
          <execution> 
           <id>start-jetty</id> 
           <phase>integration-test</phase> 
           <goals> 
            <goal>run-war</goal> 
           </goals> 
           <configuration> 
          <war>${project.build.directory}/some.war</war> 
           </configuration> 
          </execution> 
          <execution> 
           <phase>post-integration-test</phase> 
           <goals> 
            <goal>stop</goal> 
           </goals> 
           <configuration> 
            <stopKey>stop</stopKey> 
            <stopPort>8888</stopPort> 
           </configuration> 
          </execution> 
         </executions> 
        </plugin> 

Und wenn ich es laufen bekomme ich so etwas wie die:

[INFO] Started [email protected]{HTTP/1.1,[http/1.1]}{0.0.0.0:8888} 
[INFO] Started @21213ms 
[INFO] Started Jetty Server 

das ist ok, aber es hält die Hinrichtung. Danach sollten meine Tests laufen, aber nicht. Ich kann Anlegesteg verwenden: Start, die eine Problemumgehung ohne Krieg sein wird, wie es die Testausführung fortfahren, aber ich kann die Kriegsdatei diesem Ziel nicht anhängen.

Antwort

0

So ist das Maven-Plugin gestaltet.

Es ist nicht für externe Kriege oder mehrere Kriege oder mehrere Kontexte oder Produktionsnutzung gedacht.

Es ist für den Betrieb an einem einzigen Projekt (das Teil eines maven Multi-Modul-Reaktor-Build sein kann), definiert als <packaging>war</packaging> definiert.

Nur die jetty:start ermöglicht die Ausführung fortzusetzen, alle anderen Ziele sind nicht dafür ausgelegt.

jetty:start ist entworfen, um mit der integration-test Phase von Maven und der maven-failsafe-plugin zu arbeiten.

See: http://maven.apache.org/surefire/maven-failsafe-plugin/usage.html#Using_jetty_and_maven-failsafe-plugin

Alle anderen maven-jetty-plugin Ziele für die manuelle Prüfung des Projekts entworfen sind mit <packaging>war</packaging>