簡體   English   中英

如何為不同的jar版本分離類加載器?

[英]How to separate class loader for different jar version?

我有一個包含許多測試的測試戰爭文件。 每個測試都打包在maven項目中,具有很多依賴性。 我們使用maven進行依賴項管理,但這帶來了一個問題。 當測試更新公共庫時,它可能會破壞依賴於舊版lib的其他測試。 如何使所有測試在具有自己的庫版本集的完全獨立的環境中運行? 我不能在單獨的jvm中執行它們,因為這些測試需要非常頻繁地執行,例如大約30秒左右。 OSGi可以幫助解決此問題嗎?

是的,OSGi可以解決此問題,但是不要輕易采取這一步驟。 當您准備投入時間和精力來隔離和管理依賴項,對其進行正確版本控制時,可以使用OSGi,並且可以選擇使您的代碼和體系結構更具模塊化/可重用性。

請記住,由於某些傳統庫使用的非模塊化做法,一開始采用OSGi可能會很痛苦。

暫無
暫無

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

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