maven正确的集成命令-U-B
http://healthandbeauty.iteye.com/blog/1618501
在持續(xù)集成服務(wù)器上使用怎樣的 mvn 命令集成項(xiàng)目,這個(gè)問題乍一看答案很顯然,不就是?mvn clean install?么?事實(shí)上比較好的集成命令會(huì)稍微復(fù)雜些,下面是一些總結(jié):
-
不要忘了clean:?clean能夠保證上一次構(gòu)建的輸出不會(huì)影響到本次構(gòu)建。
-
使用deploy而不是install:?構(gòu)建的SNAPSHOT輸出應(yīng)當(dāng)被自動(dòng)部署到私有Maven倉(cāng)庫(kù)供他人使用,這一點(diǎn)在前面已經(jīng)詳細(xì)論述。
-
使用-U參數(shù):?該參數(shù)能強(qiáng)制讓Maven檢查所有SNAPSHOT依賴更新,確保集成基于最新的狀態(tài),如果沒有該參數(shù),Maven默認(rèn)以天為單位檢查更新,而持續(xù)集成的頻率應(yīng)該比這高很多。
-
使用-e參數(shù):如果構(gòu)建出現(xiàn)異常,該參數(shù)能讓Maven打印完整的stack trace,以方便分析錯(cuò)誤原因。
-
使用-Dmaven.repo.local參數(shù):如果持續(xù)集成服務(wù)器有很多任務(wù),每個(gè)任務(wù)都會(huì)使用本地倉(cāng)庫(kù),下載依賴至本地倉(cāng)庫(kù),為了避免這種多線程使用本地倉(cāng)庫(kù)可能會(huì)引起的沖突,可以使用-Dmaven.repo.local=/home/juven/ci/foo-repo/這樣的參數(shù)為每個(gè)任務(wù)分配本地倉(cāng)庫(kù)。
-
使用-B參數(shù):該參數(shù)表示讓Maven使用批處理模式構(gòu)建項(xiàng)目,能夠避免一些需要人工參與交互而造成的掛起狀態(tài)。
綜上,持續(xù)集成服務(wù)器上的集成命令應(yīng)該為?mvn clean deploy -B -e -U -Dmaven.repo.local=xxx?。此外,定期清理持續(xù)集成服務(wù)器的本地Maven倉(cāng)庫(kù)也是個(gè)很好的習(xí)慣,這樣可以避免浪費(fèi)磁盤資源,幾乎所有的持續(xù)集成服務(wù)器軟件都支持本地的腳本任務(wù),你可以寫一行簡(jiǎn)單的shell或bat腳本,然后配置以天為單位自動(dòng)清理倉(cāng)庫(kù)。需要注意的是,這么做的前提是你有私有Maven倉(cāng)庫(kù),否則每次都從Internet下載所有依賴會(huì)是一場(chǎng)噩夢(mèng)。
轉(zhuǎn)載于:https://www.cnblogs.com/wangcp-2014/p/6223042.html
總結(jié)
以上是生活随笔為你收集整理的maven正确的集成命令-U-B的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: I帧和IDR帧区别
- 下一篇: 重力坝计算c语言程序,混凝土重力坝计算程