如何在Intellij Idea中找到所有未使用的类?
2022-08-31 07:37:01
有一个检查“未使用的声明”,可以在Intellij Idea中找到所有未使用的代码。(请参阅如何使用 IntelliJ IDEA 查找所有未使用的代码?但我想找到所有未使用的类,而不是方法,变量等。只有类。(很难在 3000 个结果列表中只找到类)。我该怎么做?
有一个检查“未使用的声明”,可以在Intellij Idea中找到所有未使用的代码。(请参阅如何使用 IntelliJ IDEA 查找所有未使用的代码?但我想找到所有未使用的类,而不是方法,变量等。只有类。(很难在 3000 个结果列表中只找到类)。我该怎么做?
将弹出设置
设置关闭
搜索开始
我认为这是不可行的。我怀疑这个功能是故意从IDE中省略的,因为它不能像其他“删除未使用的XXX”重构那样安全地使用。
未使用的声明 IDEA(以及 AFAIK、NetBeans)查找的是私有成员和局部变量:无法从该类或作用域之外动态访问的事物。(好吧,至少不要用反射或JVM黑客做你不应该做的事情。无论外部代码对库执行什么操作,它都不会导致使用这些东西,因为它们的范围是有限的,并且IDE可以看到所有内容。编译器可以通过仅查看代码来确定这一点。
对于类,即使它们没有访问权限,也可以使用 动态引用它们,这实际上发生在实时代码中。因此,即使它们显然没有在项目的代码中使用,它们也可能根据你或使用库运行的外部代码来使用它们。因此,IDE 无法保证删除这些类不会改变外部可观察的行为。public
Class.forName()
这就是为什么我认为IDEA只是不提供这种行为:它可能会给用户带来错误的安全期望,删除它们并不是一个安全的重构。