tool:SonarQube Scanner 3.2
我希望从声纳代码覆盖率中排除一些软件包,因为声纳是jenkins构建管道的一部分。
尝试的方法(现在将所有文件添加到上述包下,只是检查它是否真的排除了所有Java文件!) pom.xml
<sonar.coverage.exclusions>com/**/</sonar.coverage.exclusions>
<sonar.exclusions>{project.basedir}/src/main/java/com/ept/scheduleinterface/dto/**/*, {project/basedir}/src/main/java/com/test/aa//model/</sonar.exclusions>
jenkinsfile
sonar: [projectKey: PROJECT_NAME, ‘java.libraries’:‘/root/.m2/repository/org/projectlombok/lombok//lombok-.jar’,‘sonar.coverage.exclusions’: 'src/main/java/com//’**],
’-Dsonar.coverage.exclusions’: 'src/main/java/com//’]**
’-Dsonar.coverage.exclusions’: 'com//*’]**,
在我的项目结构中,有一个jenkinsfile和pom.xml文件以及dockerfile。
但是看起来声纳根本不遵循配置。 我也可以在jenkins控制台日志中看到我在例如jenkins文件被考虑
正在运行的shell脚本:
‘-Dsonar.java.libraries=/root/.m2/repository/org/projectlombok/lombok//lombok-.jar’ ‘-Dsonar.sonar.coverage.exclusions=src/main/java/com/**/*’ -Dsonar.sources=src -Dsonar.java.binaries=target/classes -Dsonar.jacoco.reportPaths=target/jacoco.exec -
答案 0 :(得分:0)
您需要在下面放置类似内容(将这两个属性都放入gradle文件中)
sonarqube {
properties {
/**
* For detailed meaning of the following exclusion properties, please checkout:
* https://docs.sonarqube.org/display/SONAR/Analysis+Parameters
*/
property "sonar.coverage.exclusions", "**/generated/**/*.java,**/generated-src/**/*.java"
property "sonar.exclusions", "**/generated/**/*.java,**/generated-src/**/*.java"
}
}