簡體   English   中英

排除maven中的目標

[英]Exclude goals in maven

我已經使用Selenium完成了一些集成測試,所以我在預集成測試階段定義了一個目標,所以我:

  • 開始碼頭
  • 部署應用程序
  • 進行測試
  • 停止碼頭

這在我的本地服務器上運行良好。

但是,現在我正在使用tomcat將應用程序部署到開發服務器,並且我希望使用此tomcat執行此測試,而不是使用Jetty,並且我的構建無法嘗試在與tomcat(8080)相同的端口上啟動Jetty。 我正在執行一個mvn包。

我可以使用maven中的任何參數來跳過這個目標嗎?

這是我在集成測試之前用來啟動服務器的代碼片段:

        <plugin>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>maven-jetty-plugin</artifactId>
            <version>6.1.10</version>
            <configuration>
                <scanIntervalSeconds>10</scanIntervalSeconds>
                <stopKey>foo</stopKey>
                <stopPort>9999</stopPort>
                <contextPath>/</contextPath>
            </configuration>
            <executions>
                <execution>
                    <id>start-jetty</id>
                    <phase>pre-integration-test</phase>
                    <goals>
                        <goal>run</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>

您可以使用maven 配置文件解決您的問題。 為Jetty容器創建配置文件,為Tomcat創建單獨的配置文件

從Maven 2.0.10開始,可以使用命令行停用一個或多個配置文件,方法是在其標識符前加上字符“!”。 或' - '如下所示:

mvn groupId:artifactId:goal -P !profile-1,!profile-2

這可用於停用標記為activeByDefault的配置文件或通過其激活配置激活的配置文件。

是更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM