我已将一些代码行实现为:
if(condition){
Class a = new Class();
method(a.b(), a.c());
}else{
method(null, null);
}
声纳在未保护的b和受保护的c上失败。请建议我任何与此有关的解决方案。
提前致谢
最佳答案
规则“未使用的保护方法”已在SonarQube Java Analyzer插件的版本4.1
中弃用,并在版本4.2
中删除,因为其可靠性较差(误报很多)。因此,我们不再维持该规则。
如果这些问题是错误的,如您所说并且可能是这样,只需将它们标记为“ False Positive”(如果使用的是SonarQube的LTS 5.6
版本)或“ Wo n't Fix”。无法修复,SonarQube犯了一个错误。
请注意,将Java Analyzer插件更新到版本4.2将使问题消失,但这仅仅是因为规则本身将从可用规则中消失。