2012-07-28 97 views
9

我有一個大項目我的經理致力於從項目中刪除未使用的類。如何刪除java項目中未使用的類?

我發現它這給我的未在項目中使用的類列表很好的工具..

可以在Apache浜做到這一點?或建議任何其他工具

+3

如果您不掌握應用程序使用的所有框架和技術,那麼這是一項非常困難的任務。很多類可能不會被使用,因爲它們在某個配置文件中被引用,通過反射實例化和使用。另一方面,你可以有一組相互引用的類,但在應用程序中永遠不會使用它們。在做這件事之前,你最好有一套覆蓋整個應用程序的自動化集成測試。 – 2012-07-28 10:33:38

回答

7

您可以嘗試

Unused Code Detector

一個Eclipse插件,這可能會幫助你。爲了補充說明,如果通過反射來使用類,那麼會有一些問題。

也讀爲:

UCDetector發現的問題只是建議。在更改代碼之前,你應該真的知道你在做什麼!如果UCDetector告訴你,有沒有引用您的代碼仍然可以被使用:

Reflection 
Frameworks like Spring, Hibernate or Eclipse which declare dependencies in property files, xml files (extension-points) ... 
Third party code, which is using your API 
Jars in your workspace 
To be continued... 

變化的知名度可能會導致與繼承,反射,實例化的問題......

這是好主意,做一個完整的文本搜索工作區中的代碼片段,您想要更改。

3

IntelliJ IDEA具有出色的靜態analyzer,其中包括死代碼檢測。對於一組有限的語言和框架,它也可以在免費的community edition中獲得。