Tar*_*nti 11 intellij-idea maven jacoco sonarqube sonarqube-scan
我和maven一起经营着sonarqube.
我用以下方式安装它.使用brew,我安装mysql和sonar.
当我运行时,我得到7个严重的错误,但88个测试的代码覆盖率为零

当我使用IntelliJ的工具运行它时,我得到以下结果.(不是零!)

这是我直接检查Jacoco结果的时候.在$base_direc/target/jacoco/index.html

Edit2:我已编辑~/.m2/settings.xml
添加
<properties>
<sonar.host.url>http://localhost:9000/</sonar.host.url>
</properties>
Run Code Online (Sandbox Code Playgroud)
编辑/usr/local/Cellar/sonarqube/6.3.1/libexec/conf/sonar.properties
补充道sonar.host.url=http://localhost:9000/
编辑/usr/local/etc/sonar-scanner.properties补充说 -sonar.host.url=http://localhost:9000/
以上述所有方式运行应用程序并且结果相同,即,我可以看到Jacoco结果但不在声纳中.
是否有可能如果发现错误声纳拒绝进行代码覆盖?!
我找到了解决方案 -
我包含的maven插件配置了Jacoco的destfile和datafile ${basedir}/target/coverage-reports/jacoco-unit.exec
但默认情况下,声纳会读到${basedir}/target/jacoco.exec.我更改了http:// localhost:9000/settings?category = java的默认值
参考:声纳代码覆盖范围
我已通过以下步骤解决了此问题:
<properties>
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
<sonar.jacoco.reportPath>${project.basedir}/../target/jacoco.exec</sonar.jacoco.reportPath>
<sonar.language>java</sonar.language>
</properties>
Run Code Online (Sandbox Code Playgroud)
sonar.projectName=${JOB_NAME}
sonar.projectVersion=1.0.0
sonar.sources=src/main
sonar.sourceEncoding=UTF-8
sonar.language=java
sonar.tests=src/test
sonar.junit.reportsPath=target/surefire-reports
sonar.surefire.reportsPath=target/surefire-reports
sonar.jacoco.reportPath=target/jacoco.exec
sonar.binaries=target/classes
sonar.java.coveragePlugin=jacoco
sonar.verbose=true
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19450 次 |
| 最近记录: |