ChatGPT解决这个技术问题 Extra ChatGPT

如何使用 IntelliJ IDEA 查找所有未使用的代码?

当我在 .java 文件中时,未使用的代码通常显示为灰色或带有绿色下划线,表示此代码可能(可能是因为一些奇怪的 JNI/Reflection 极端情况)未被使用。但是我有这个包含数千个 Java 文件的项目,我想找到这些可能未使用的代码的所有实例。我怎样才能在 IntelliJ IDEA 中做到这一点?

给出的答案是正确的,但遗憾的是,没有办法在项目中获取所有未使用的/死代码+一个按钮将其全部删除。那会很有帮助!
@Snicolas 右键单击检查结果(声明冗余->未使用声明)并选择“安全删除”。
或者,如果您想要按钮,则左侧工具栏中有灯泡。
您可以在 stackoverflow.com/questions/22522013/… 上查看我的答案。在那里,您可以找到如何过滤结果以仅查看您真正想要的结果。
有没有办法在拉取请求中自动执行 IntelliJ 的未使用代码检测机制?创建拉取请求时,它将扫描该 PR 中的文件,并向我显示未使用的代码。

B
Borek Bernard

只需使用启用了适当检查的 Analyze | Inspect Code未使用的声明声明冗余 组下)。

使用 IntelliJ 11 CE,您现在可以“分析 | 按名称运行检查 ... | 未使用的声明”


只是对未来读者的更正:至少 IDEA 12.1.6 确实在“分析”->“检查代码”下确实有它
@CrazyCoder 这也显示了未使用的字段和方法,有什么办法只显示未使用的类吗?
我的 2 美分:在 IntelliJ 2016.3.4 上,该选项位于“分析”>“按名称运行检查”下。 -- 我的 5 美分:如果你在做一个大项目并且你正在为整个项目运行这个功能,我建议你在午餐前或一天结束时做,因为它可能需要 1 小时以上才能完成.或者,也许,你可以在工作时间做这件事,然后对你的老板说你正在运行分析仪……你可以免费休息一下! :)
@BenClayton 和其他人,正在寻找未使用的课程......stackoverflow.com/a/38244028/2541200
如果您尝试在 Kotlin 项目中查找未使用的方法,请运行 Unused symbol 检查。看起来 Unused declaration 仅适用于 Java 项目。
J
Johnny

在较新版本的 IntelliJ 中,它位于代码 -> 分析代码 -> 按名称运行检查。

在此之前的 IntelliJ 版本中,您应该从 Analyze -> Run Inspection By Name 运行它:

https://i.stack.imgur.com/ngUH5m.png

然后,选择未使用的声明:

https://i.stack.imgur.com/DGDd6m.png

最后,取消选中包含测试源:

https://i.stack.imgur.com/1Ls86m.png


在较新版本的 IntelliJ 中,它位于 Code |分析代码 |按名称运行检查
O
Orwellophile

运行按名称检查后,选择所有位置,并使用对所有问题应用快速修复下拉菜单,并使用删除未使用的参数和安全删除中的一个(或两者)。

之后不要忘记点击 Do Refactor。

然后你需要运行另一个分析,因为重构的代码无疑会揭示更多未使用的声明。

https://i.stack.imgur.com/QmUrH.png