2015-04-01 70 views
0

我試圖運行2個Maven目標像一個Maven的命令:如何在一個Maven的命令執行多個目標,但使用不同的參數爲每個目標

mvn release:prepare release:perform -Darguments='-Dmaven.test.skip=true' 

,但是,我想第一個目標跳過測試,第二個不跳過測試。

它必須在一行命令中。

有沒有辦法做到這一點,而不是在兩個單獨的命令中執行它們?

+0

你可以發佈你的'POM.xml'文件內容,也許是最小的內容 – dvhh 2015-04-01 04:42:33

+0

你看過配置文件嗎?這個問題可能會有所幫助,http://stackoverflow.com/questions/17117589/how-can-i-skip-tests-in-maven-install-goal-while-running-them-in-maven-test-goa – Adi 2015-04-01 05:06:38

回答

0

您可以使用以下方法:

mvn -Dmaven.test.skip=true release:prepare release:perform 

在釋放插件參數通過-Darguments='....'傳遞到由release:perform啓動子流程。其他參數傳遞到由release:prepare開始的進程。

+1

This不適合我。 -Dmaven.test.skip = true不會跳過任何目標的測試 – Eric 2015-04-06 23:42:35

0

我花了幾個小時。

我的工作發佈命令:

-Darguments='-DskipTests=true' -DskipTests release:prepare release:perform 

實際上是在釋放我的插件問題:

<plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-release-plugin</artifactId> 
      <configuration> 
       <arguments>${release.arguments}</arguments> 

發佈插件的「論據」參數被重寫,我通過-Darguments到版本:準備(爲了被傳遞到發佈:通過發佈執行:準備)。

相關問題