如何在java项目中查找未使用/死代码您使用什么工具在大型Java项目中查找未使用/死代码?我们的产品已经开发了几年,手动检测不再使用的代码变得非常困难。但是,我们尝试删除尽可能多的未使用代码。还赞赏对一般战略/技术(特定工具除外)的建议。编辑:请注意,我们已经使用了代码覆盖率工具(Clover,IntelliJ),但这些都没有多大帮助。死代码仍然有单元测试,并显示为覆盖。我想一个理想的工具可以识别出具有很少其他代码的代码簇,从而允许docues手动检查。
3 回答

长风秋雁
TA贡献1757条经验 获得超7个赞
我会检测正在运行的系统以保存代码使用日志,然后开始检查未使用数月或数年的代码。
例如,如果您对未使用的类感兴趣,则可以检测所有类以在创建实例时进行记录。然后一个小脚本可以将这些日志与完整的类列表进行比较,以找到未使用的类。
当然,如果你采用方法级别,你应该记住性能。例如,这些方法只能记录它们的首次使用。我不知道如何用Java做得最好。我们在Smalltalk中完成了这项工作,Smalltalk是一种动态语言,因此允许在运行时进行代码修改。我们使用日志记录调用对所有方法进行检测,并在首次记录方法后卸载日志记录代码,因此在一段时间后不再出现性能损失。也许类似的事情可以在Java中用静态布尔标志来完成.....

达令说
TA贡献1821条经验 获得超6个赞
添加回答
举报
0/150
提交
取消