java-sonarqube 4.2和龙目岛

将SonarQube从4.0升级到4.2之后,我从带有Lombok批注的类中得到了一堆“未使用的私有字段应删除”错误.

我有

@SuppressWarnings("PMD.UnusedPrivateField")

在所有这些类的开头声明.当我使用SonarQube 3.7和4.0时,它运行良好.

我用

mvn sonar:sonar

生成SonarQube报告.

这显示了我的班级样子:

@Data
@SuppressWarnings("PMD.UnusedPrivateField")
public class MyClass {
    private String field;
}

如何摆脱4.2版中的这些错误?谢谢.

解决方法:

内部SonarQube规则squid:S1068生成的消息是“应该删除未使用的私有字段”,而您的@SuppressWarnings批注将禁用匹配的(和不建议使用的)PMD检查.

您可能要检查质量配置文件,最终禁用此规则,或者为Lombok增强类添加一些排除项.

上一篇:sonar实战


下一篇:java-如何使用Maven中的sonarQube在提交之前收集增量分析