在 Java Eclipse 项目中查找未使用的类

2022-08-31 13:42:54

我有一个大型的Eclipse项目,其中存在几个类,尽管它们在任何地方都不再使用,但从未被标记为@Deprecated。

如何轻松找到所有这些内容?


答案 1

我也喜欢使用UCDetector

screenshot

UCDetector(Uneessary Code Detector)是一个开源的eclipse PlugIn工具,用于查找不必要的(死的)公共java代码。它还尝试使代码最终,受保护或私有。

优点:它还可以找到类之间的循环依赖关系

(还有许多其他工具-包括Findbugs--也知道如何做到这一点)


警告熙德在评论中提到:

如果存在仅在运行时已知的接口实现,则 UCDetector 将不起作用。
它错误地将实现类标记为未使用。


2017年更新:静态代码分析在8年内发生了相当大的变化。
使用 SonarLint for Eclipse,您可以使用最新的 SonarJava 4.6 插件来分析您的代码。
它会找到死代码


答案 2

ProGuard 可用于打印未使用的类/方法的报告。不过,向它提供所有依赖罐子是很痛苦的。

这些选项列出了应用程序 mypackage 中未使用的类、字段和方法。我的应用:

-injars      in.jar
-libraryjars <java.home>/lib/rt.jar

-dontoptimize
-dontobfuscate
-dontpreverify
-printusage

-keep public class mypackage.MyApplication {
    public static void main(java.lang.String[]);
}

推荐