我正在使用來自Apache的axis 2庫的Java項目中工作。軸2庫由大約20個jar文件組成,其中一些未使用項目。我想知道的是,如果有一種方法可以識別哪些jar文件是未使用的文件。如何識別我的項目中包含的不必要的罐子?
我正在使用Eclipse IDE我認爲解決問題的一種方法是在時間添加一個jar,直到我沒有收到有關缺少類的錯誤消息。但是,我不確定這是否會起作用,因爲僅在運行時纔會顯示某些丟失的類錯誤。
有沒有人知道更好的方法來解決這個問題?
我正在使用來自Apache的axis 2庫的Java項目中工作。軸2庫由大約20個jar文件組成,其中一些未使用項目。我想知道的是,如果有一種方法可以識別哪些jar文件是未使用的文件。如何識別我的項目中包含的不必要的罐子?
我正在使用Eclipse IDE我認爲解決問題的一種方法是在時間添加一個jar,直到我沒有收到有關缺少類的錯誤消息。但是,我不確定這是否會起作用,因爲僅在運行時纔會顯示某些丟失的類錯誤。
有沒有人知道更好的方法來解決這個問題?
告密FTW
http://www.jboss.org/tattletale
JBoss的告密是一個工具,可以幫助你得到你所從事的項目,或者你依賴於產品的概述。
該工具將爲您提供報告,可以幫助你
我會遵循你原來的想法,即在編譯之前添加一個jar。
你說得對,你仍然可以發現運行時錯誤,但除非應用程序對於手動測試的覆蓋範圍太大,否則我只是運行並測試它以添加任何缺少的jar。
我不認爲你可以可靠地刪除罐子,因爲可以在運行時解決類,使用
Class.forName(className);
您可能可以確定用於上述的類名稱,但這不太可能。
由於類將在運行時被請求/解析,因此可以運行(綜合)測試套件來確定東西是否仍然有效。但最終我會非常謹慎地從像Axis這樣的軟件包中移除瓶子。我認爲他們出於某種目的。 jar文件的大小真的有問題嗎?
我會試試看。有誰知道,如果tattletales能夠識別運行時類的依賴關係? – 2009-06-18 12:24:01