import lombok.Data;
@Data
public class Filter {
private Operator operator;
private Object value;
private String property;
private PropertyType propertyType;
}
Run Code Online (Sandbox Code Playgroud)
对于上面的代码,有4个squid:S1068报告有关未使用的私有字段.(即使它们被lombok生成的getter使用).我已经看到一些与"lombok.Data"注释的支持有关的修复已被推送,但仍然有这些恼人的误报.
版本:SonarQube 6.4.0.25310
SonarJava 4.13.0.11627
用于Jenkins的SonarQube扫描仪(2.6.1)
Mic*_*eam 18
这种情况应该由SonarJava完美处理.至少从版本3.14(SONARJAVA-1642)开始考虑Lombok注释.您遇到的问题是由于Java项目配置错误造成的.无需编写任何自定义规则来处理此问题,分析器本身就支持这一规则.
SonarJava读取字节码以了解使用哪个注释.因此,如果您不从依赖项提供字节码,则在您自己的代码的字节码之上,分析器将表现不正常.
特别是,设置属性sonar.java.libraries应解决您的问题.请注意,使用SonarQube maven或gradle扫描仪时,通常会自动设置此属性.
请查看文档以正确配置您的项目:https://docs.sonarqube.org/display/PLUG/Java+Plugin+and+Bytecode
小智 8
我在詹金斯声纳分析属性中添加了以下属性。为我工作。
sonar.java.libraries=/jenkins/jenkins-user-home/.m2/repository/org/projectlombok/lombok/1.16.20/lombok-1.16.20.jar
Run Code Online (Sandbox Code Playgroud)
lombok v1.16.20是我的项目中的lombok版本。
| 归档时间: |
|
| 查看次数: |
13271 次 |
| 最近记录: |