簡體   English   中英

如何處理Jenkins上的並發Maven構建?

[英]How to handle concurrent Maven builds on Jenkins?

我經常使用Jenkins,並在集群上運行許多不同的工作。 偶爾會有一個工作因一些模糊的錯誤而失敗,我已經能夠調試這個事實,即工作A正在使用工件X,而工作B剛剛下載或者構建了一個新版本(使用maven) 。

作業A失敗,java.lang.NoClassDefFoundError或其他一些ZIP文件被Java或正在使用的ZIP實現損壞或段錯誤。

因此,顯而易見的解決方案是使用私有本地maven存儲庫來完成這些工作,但這是非常昂貴的磁盤和互聯網解決方案 這意味着每個工作的專家都會下載整個互聯網。

對於某些情況,從JAR文件中急切加載類損壞的類文件通常會幫助我們限制損壞,但不希望對所有內容都這樣做。

還有其他方法嗎? 某種改進的存儲庫鎖定?

是的,看起來maven不喜歡並發訪問單個本地存儲庫(最近才開始出現問題 ,僅僅7年前)。 為每項工作創建回購可能非常龐大。 但是,有一個變量$EXECUTOR_NUMBER ,所以也許您可以使用它為每個Jenkins執行程序創建maven本地存儲庫。

暫無
暫無

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

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