我們有一個大型的多模塊Maven項目。我一直在試驗用-T選項加速我們的單元測試版本,並取得了一些積極的成果。不過,也有在我們的項目的一些依賴路徑是這樣的:Maven:在運行單元測試時忽略模塊間依賴關係
模塊A < - 模塊B < - 模塊C
,其中每個模塊的單元測試需要20-30分鐘。由於-T選項以其從屬順序構建模塊,因此總共需要90分鐘的構建時間。如果我可以先編譯所有模塊,然後同時運行A,B和C的測試,那麼它確實會加快構建。例如。事情是這樣的:
$ mvn -T 10 clean install -DskipTests
$ mvn -T 10 --ignore-dependencies test
問題:是否有Maven的這個開箱支持?
我一直在玩寫作一個小腳本的想法,它將解析mvn依賴關係的輸出:並且並行地調用「mvn test -pl A」,「mvn test -pl B」等等,但很顯然,如果Maven有一個開箱即用的解決方案,那就更好了。
我們正在使用Jenkins,所以如果有Jenkins插件或Jenkins的功能,我錯過了支持此功能的功能,那可能會有很大幫助!
注:加快對A,B和C單元測試將採取工作顯著量,而且也不能保證單個模塊內的測試並行
這確實是一個很好的解決方案,沒有想到那個。 +1 – Tunaki
感謝您的解決方案 - 非常好! – choover