是否有免费的Java静态代码分析工具,它可以检测到我使用相同的常量值作为所有调用方法的方法参数,所以我可以删除参数并在方法体内使用常量值?例如。在
class A {
void methodA {
someMethod("first", 42);
}
}
class B {
void methodB {
someMethod("second", 42);
}
void methodC {
someMethod("third", 42);
}
}
我希望报告someMethod的第二个参数(假设这3个调用是我项目中对该方法的所有调用)。
我在Eclipse编译器警告,Findbugs,CodePro Analytix或UCDetector中找不到这样的东西,但我可能错过了相应的设置。
编辑:只是为了确保:我不是要求如何通过重构来移除常量值。鉴于这3个方法调用可能分布在数千个源文件中,我正在询问如何检测这种情况。