簡體   English   中英

如何解決JAR之間的循環依賴?

[英]How to solve circular dependencies between JARs?

我正在開發一個包含大量JAR的大項目,並且肯定沒有文檔! :(

為了確保應用程序中沒有內存泄漏,我使用了JBoss Tattletale來檢查Jars之間的循環依賴關系,不幸的是我發現了很多。

能否指導我如何解決JAR之間的循環依賴?

提前致謝。

您可以通過依賴項反轉來破壞依賴項。 為了避免和解決循環依賴關系,有助於設計分層體系結構。

也就是說,循環依賴不會導致內存泄漏。 但打破循環依賴有很多積極影響,主要是模塊化。 這不僅增加了靈活性,還有助於檢查和解決問題,包括內存泄漏。

如果你不打破循環依賴包,那些行為非常類似於一個大的單片包!

除了使用接口之外,您還可以通過在jar /包之間移動類來進行結構改進。 分解脂肪類以便將共同責任更容易地組合在一起可以幫助完成這個過程。 有幾種商業可視化/重組工具可以幫助解決這個問題。

如果通過memory leakage ,你的意思more memory than necessary is consumed或者my jar(s) is(are) too fat ,那么,你可能想調查Proguard

我正在創建大型maven項目,許多庫依賴於許多庫,這些庫本身與其他庫有依賴關系。 但是,我沒有使用所有庫中的所有代碼。 Proguard基本上幫我修剪並刪除所有不必要的代碼。

這對我來說真的是一個干凈的工具。 我創建了一個包含所有依賴項的巨大胖罐,在我的代碼中配置我的入口點然后它縮小了所有內容。

暫無
暫無

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

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