SonarQube龙目岛吸气剂识别 [英] SonarQube Lombok Getter recognition
问题描述
我正在将SonarQube 4.5.4与Java插件3.1一起使用.据我所知,此声纳Java版本从2.8开始支持 Lombok部分支持(Getter和Setter注释).
但是在我的情况下,它仍然报告带有lombok.Getter
的字段:
I am using SonarQube 4.5.4 with Java plugin 3.1. As I know this sonar-java version supports Lombok partially (Getter and Setter annotations) starting from 2.8.
But in my case it still reports field with lombok.Getter
as:
squid:S1068 Unused private fields should be removed:
@Getter
private String userName;
您是否知道为什么会发生这种情况以及我在哪里可以解决?
Do you have any ideas why this could happen and where can I fix it?
更新
对于字节码,我同时尝试了sonar.java.binaries
和sonar.binaries
我使用sbt并使用声纳运行器对 sonar-project.properties
For bytecode I tried both sonar.java.binaries
and sonar.binaries
I use sbt and run analysis with sonar-runner for below 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
推荐答案
您必须通过sonar.java.libraries
属性提供您使用的第三方库(即您的类路径),以便分析器能够检测到您正在使用Lombok并做出正确的排除.
You have to provide the 3rd party libraries you use (ie your classpath) via sonar.java.libraries
property for the analyzer to be able to detect that you are using Lombok and make the correct exclusions.
这篇关于SonarQube龙目岛吸气剂识别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!