我正在使用带有Java插件3.1的SonarQube 4.5.4。据我所知,这个声纳-java版本支持Lombok partially (Getter and Setter annotations) starting from 2.8
但就我而言,它仍然会将lombok.Getter
字段报告为:
squid:S1068 Unused private fields should be removed:
@Getter
private String userName;
你有什么想法可以解决这个问题吗?我在哪里可以修复它?
更新
对于字节码,我尝试了sonar.java.binaries
和sonar.binaries
我使用sbt并使用sonar-runner运行分析以下 sonar-project.properties
sonar.projectVersion=0.1
sonar.java.binaries=\
target/scala-2.11/classes,\
target/scala-2.11/test-classes
sonar.sourceEncoding=UTF-8
sonar.projectName=projectName
sonar.host.url=http://hostname:9000
sonar.login=login
sonar.password=password
sonar.projectKey=projectKey:webJava
sonar.modules=app
app.sonar.projectBaseDir=web
app.sonar.sources=app
app.sonar.tests=test
sonar.analysis.mode=preview
sonar.issuesReport.lightModeOnly=false
答案 0 :(得分:8)
您必须通过sonar.java.libraries
属性提供您使用的第三方库(即您的类路径),以便分析器能够检测到您正在使用Lombok并进行正确的排除。