/ / So starten und stoppen Sie den Jetty Server während eines Gebäudes in Maven - Maven, Jetty, Surefire

Wie man Anlegesteg während eines Gebäudes in Maven startet und stoppt - Maven, Anlegesteg, todsichere

Ich habe immer noch Probleme beim Konfigurieren des StegsPlugin in Maven, um den Test mit dem Maven-Surefire-Plugin zu starten und dann den Jetty-Server zu stoppen. Bisher läuft es nur am Steg und wartet und es geht nicht weiter. Ein weiteres Problem ist, wenn das Plugin ein Jetty-Maven-Plugin oder ein Maven-Jetty-Plugin sein soll. Ich mache keinen Unterschied zwischen ihnen. Jedenfalls hier ein Auszug aus meiner pom.xml.

<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<!--version>9.2.11.v20150529</version-->
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
<webApp>
<contextPath>/hellojavaworld</contextPath>
</webApp>
<war>c:apache-tomcat-7.0.64webappshellojavaworld.war</war>
<stopPort>9966</stopPort>
<stopKey>foo</stopKey>
</configuration>

<executions>
<execution>
<id>start-jetty</id>
<phase>pre-integration-test</phase>
<goals>
<goal>run</goal>
</goals>
<!--configuration>
<daemon>true</daemon>
</configuration-->
</execution>
<execution>
<id>stop-jetty</id>
<phase>post-integration-test</phase>
<goals>
<goal>stop</goal>
</goals>
</execution>
</executions>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<excludes>
<exclude>*.java</exclude>
</excludes>
</configuration>
<executions>
<execution>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<skip>false</skip>
<excludes>
<exclude>none</exclude>
</excludes>
<includes>
<include>*.java</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>

In der Konsole ist nur:

[INFO] Startete Jetty Server

[INFO] Starten des Scanners im Abstand von 10 Sekunden.

Ich möchte, dass der Steg gestartet, der Test ausgeführt (Servlet-Container erforderlich), der Steg gestoppt und BUILD SUCCESSFUL geschrieben wird.

Hat jemand einen Vorschlag? Danke im Voraus.

Antworten:

1 für die Antwort № 1

Problem war das Tag <daemon></daemon> muss angegeben werden. In meinem Fall wurde auskommentiert. Eine weitere gute Quelle für das Jetty Maven Plugin ist http://wiki.eclipse.org/Jetty/Feature/Jetty_Maven_Plugin


0 für die Antwort № 2

Ich hatte das gleiche Problem bei der Verwendung von Version 9.2.2.v20140723 des Steg-Plugins. Nach dem Upgrade auf 9.2.16.v20160414 setzt maven die Integrationstests fort und stoppt den Jetty-Server in der Phase nach dem Integrationstest.