我很确定存在声纳规则,显示缺少参数。 例如:
LOG.info( "Sonar issue {}{}{}", "Missing", "1 parameter" );
有谁知道该规则发生了什么?
答案 0 :(得分:1)
据我所知,来自SonarJava的规则squid:S2275应该在没有足够参数的情况下正确地提出这样的呼叫问题。我可以让SonarJava分析器在本地使用最新发布的版本(5.3)提出问题。
但是,似乎在某些时候,规则的行为已得到改进,无法正确处理sl4fj
库(请参阅ticket SONARJAVA-2588)。这已经与 SonarJava 5.1.1 一起提供。
其他一点,在SonarJava 4.9规则的初始实现中已分为两部分(见SONARJAVA-2208):
因此,您的质量档案中可能未启用这两项规则中的一项。但是,它应该仍然是S2275,这应该会引起你的问题。所以我希望规则仍然可以启用。这两个规则都是默认 Sonar Way 质量配置文件的一部分。
现在,因为您使用的是SonarJava 5.0.1 ,您可能无法从最新修复中获益,从而改善了对slf4j
的支持。从SonarQube实例更新 SonarJava插件到最新发布的版本应解决问题并恢复规则的预期行为。