我在Jenkins
1.545中有一个多模块maven项目。我正在使用Sonarqube
版本4.2。我安装了cobertura
插件版本1.6.1和java
插件Sonarqube
中的版本2.2.1。我已使用maven命令coverage.xml
为每个模块在location- /target/site/cobertura/coverage.xml
成功生成"cobertura:cobertura -Dcobertura.report.format=xml"
个文件
对于声纳,我已将maven构建选项设置为sonar:sonar
,其属性如下:
sonar.dynamicAnalysis=reuseReports
sonar.junit.reportsPath=target/site
sonar.java.coveragePlugin=cobertura
sonar.cobertura.reportPath=/target/site/cobertura/coverage.xml
当我在coverage.xml
中浏览项目的工作区时,我可以看到Jenkins
文件,但插件一直说它无法找到它。我在jenkins的控制台输出中得到以下消息 -
Execute Findbugs 2.0.3 done: 48446 ms
Sensor FindbugsSensor done: 48800 ms
Sensor CoberturaSensor...
Cobertura report not found at /target/site/cobertura/coverage.xml
Sensor CoberturaSensor done: 4 ms
Sensor CpdSensor...
感谢任何帮助。谢谢。
答案 0 :(得分:13)
我有同样的问题( SonarQube 4.4。, Cobertura 1.6.2 , Jenkins + maven + java8 ),我终于想通了解决问题的方法:
sonar.cobertura.reportPath=target/site/cobertura/coverage.xml
注意路径开头缺少“/”!
它实际上试图从我的Linux服务器中的绝对根目录进行搜索。