我尝试在Jenkins构建过程中使用Sonarqube扫描Jhipster生成的代码。
我的配置如下:
这是全新安装,所有系统都在一起通信。
在运行构建时,Jenkins会警告' bower_components'中的重复引用。库中。
警告:文件中的重复引用太多 [moduleKey = Challenge1:0.1-HENDRIX, 相对= SRC /主/ web应用/ bower_components /角I18N /角locale_vun-tz.js, 对于第20行的块,basedir = / var / jenkins_home / workspace / Challenge-1]。 仅保留前100个参考文献。
我的问题是,由于很少有排除设置在不同的级别,因此我没有理由提醒它的原因:
1)在pom.xml中
<sonar.exclusions>src/main/webapp/content/**/*.*, src/main/webapp/bower_components/**/*.*, target/www/**/*.*</sonar.exclusions>
2)在Jenkinsfile中
node {
...
stage 'scan'
sh "${sonarqubeScannerHome}/bin/sonar-scanner -e -Dsonar.host.url=http://sonarqube:9000 -Dsonar.projectKey=Challenge1:'0.1-HENDRIX' -Dsonar.projectName='Challenge 1' -Dsonar.projectVersion='0.1-HENDRIX' -Dsonar.sources='src/' -Dsonar.coverage.exclusions=**/bower_components/**"
}
3)在sonarqube上自定义(分析范围)。
编辑: 这&#34;非排除&#34;最初导致内存转储,我可以通过扩展sonarqube(sonar.properties)上的内存来解决。
sonar.web.javaOpts=-Xmx2048m -Xms512m -XX:MaxPermSize=160m -XX:+HeapDumpOnOutOfMemoryError -Djava.net.preferIPv4Stack=true
但是,我仍然担心扩展内存不是合适的解决方案,我必须能够排除代码的某些部分。我该怎么做才能从扫描分析中删除bower组件? (我可能做错了什么)。
答案 0 :(得分:0)
我的错误:我使用-Dsonar.coverage.exclusions而不是-Dsonar.global.exclusions