2013-02-14 63 views

回答

22

如果您通過調用階段來啓動maven,它將執行所有生命週期階段,直至您正在調用的階段。例如,調用

mvn test 

所有階段時前的測試生命週期階段也將被執行:該項目將被驗證,來源和資源將生成和處理,資源將被編譯,同樣會發生在測試資源和資源,最後運行單元測試。

但是,您也可以調用綁定到生命週期階段的插件目標。在測試階段的情況下,綁定的目標是surefire的測試mojo。因此,您可以撥打

mvn surefire:test 

並且不會執行其他生命週期階段。 您可以根據封裝類型here找到綁定到每個階段的目標。

+0

鏈接已死亡。請更新它。 – 2017-04-10 12:43:36

+0

更新了鏈接 – Akro 2017-04-20 13:52:00

+0

謝謝。 – 2017-04-20 13:59:49

0

Build your own lifecycle,或者使用Maven(Ant,Gradle,IDE,命令行JUnit runner等)來運行測試。這就是您在使用Maven時所使用的那種限制。

+0

瑞安,這是絕對有可能的,看到其他的答案。 – 2013-02-14 14:39:30

+0

@SamuelEUSTACHI:是的,沒有。確實,我應該想到提到明確運行surefire插件,但是問題是如何運行一個僅由測試階段組成的maven生命週期,這不是。 – 2013-02-19 19:56:43

+1

事實上,瑞恩這個問題明確提到了一個生命週期,所以你的回答沒有錯。但它可能導致jayunit100處於複雜的方向。我試圖在基本使用場景中翻譯這個問題,因爲只有一個階段的生命週期會有點矯枉過正。 – 2013-02-20 07:29:31

6

您可以運行:

mvn surefire:test 
相關問題