2011-01-21 51 views
6

我試圖使用Maven插件無故障使用此配置來運行我的集成測試:直到Jetty是預集成開始集成測試不會啓動(無故障時,Maven)

<plugin> 
    <artifactId>maven-failsafe-plugin</artifactId> 
    <version>2.7.1</version> 
    <executions> 
     <execution> 
     <id>integration-test</id> 
     <goals> 
      <goal>integration-test</goal> 
     </goals> 
     </execution> 
     <execution> 
     <id>verify</id> 
     <goals> 
      <goal>verify</goal> 
     </goals> 
     </execution> 
    </executions> 
</plugin> 

<plugin> 
    <groupId>org.mortbay.jetty</groupId> 
    <artifactId>maven-jetty-plugin</artifactId> 
    <version>6.1.7</version> 
    <configuration> 

      <connectors> 
      <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector"> 
       <port>8080</port> 
       <maxIdleTime>3600000</maxIdleTime> 
      </connector> 
      </connectors> 

     <contextPath>/</contextPath> 
     <scanIntervalSeconds>3</scanIntervalSeconds> 
     <scanTargetPatterns> 
      <scanTargetPattern> 
       <directory>src/main/webapp/WEB-INF</directory> 
       <excludes> 
        <exclude>**/*.jsp</exclude> 
        <exclude>**/*.html</exclude> 
       </excludes> 
       <includes> 
        <include>**/*.page</include> 
        <include>**/*.properties</include> 
        <include>**/*.xml</include> 
       </includes> 
      </scanTargetPattern> 
     </scanTargetPatterns> 
    </configuration> 
    <executions> 
      <execution> 
       <id>start-jetty</id> 
       <phase>pre-integration-test</phase> 
       <goals> 
        <goal>run-war</goal> 
       </goals> 
       <configuration> 
        <scanIntervalSeconds>0</scanIntervalSeconds> 
        <daemon>true</daemon> 
       </configuration> 
      </execution> 
      <execution> 
       <id>stop-jetty</id> 
       <phase>post-integration-test</phase> 
       <goals> 
        <goal>stop</goal> 
       </goals> 
      </execution> 
    </executions> 
</plugin> 

一切都很好 - 測試階段。然後沒有任何反應,好像它在等待什麼。最後一行說:

[INFO] Started Jetty Server

我怎樣才能讓測試到右後啓動?我使用mvn verify運行maven。

+0

我與版本8.1.9有相同的問題。 – 2014-10-06 08:17:58

+0

與9.4.4.v20170414相同 – xedo 2017-04-23 19:37:53

回答

2

將jetty maven插件版本從6.1.7更改爲6.1.26解決了所有問題。

+0

我正面臨同樣的問題。我也將版本升級到6.1.26,但是,我的集成測試沒有運行。最後一行是:[INFO]入門Jetty服務器。之後,沒有任何反應。 Maven乾淨安裝步驟卡住了。任何想法爲什麼會發生? – 2013-04-25 08:39:58

2

對於人們還在尋找一個解決方案,我有同樣的問題,我解決它通過更換

<goals> 
    <goal>run-war</goal> 
</goals> 

通過

<goals> 
    <goal>start</goal> 
</goals> 

它的工作原理,因爲運行*卡住執行,同時啓動是非阻塞的。