我把我的工作从一个单一的哈得逊机器转移到一个多奴隶的托管环境,而现在,海考会的覆盖面已经停止。
WORKING (old): Hudson 2.0.1, Jenkins Sonar Plugin 1.7.1, Sonar 2.1.2
BROKEN (new): Jenkins 1.446, Jenkins Sonar Plugin 1.7.2, Sonar 2.1.2
My Hudson job is called Pinnacle and it used to run on a single Hudson server with Sonar on the same machine. I set up my (NO MAVEN) build by doing the following.
(1) 在我的建筑中添加一个叫做的安特目标。
2) 将Hudson的Pinnacle工作“invoke独立的Sonar Analysis”与这些特性混为一谈:
sonar.projectKey=com.skyboximaging:pinnacle
sonar.projectName="Pinnacle"
sonar.projectVersion=1.0
sources=Pinnacle/src/java
tests=Pinnacle/test/java
binaries=Pinnacle/classes
sonar.jacoco.reportPath=Pinnacle/jacoco.exec
sonar.jacoco.antTargets=test-with-coverage
(说明该守则被查到Jenkins工作空间的Pinnacle名录)
3) 配置的Sonar“一般环境”,以利用JCoCo公司进行编码覆盖
一切善良工作!
但是,在新的Jenkins环境中,我在Jenkins建筑产出中看到这一错误:
23:15:17.863 INFO Sensor JaCoCoSensor...
23:15:17.868 INFO Project coverage is set to 0% as no JaCoCo execution data has been dumped: /var/lib/jenkins/workspace/Pinnacle/Pinnacle/jacoco.exec
该档案在建房的奴隶中不存在。 (目录/var/lib/jenkins/workspace/Pinnacle/Pinnacledoes现存)
所有其他传感器(FindBugs、PMD等)似乎都在运行。 Just JaCo公司被打破。
Does Sonar/JaCoCo even work in a multi-slave Jenkins environment?
我怀疑安托特任务(<代码>)没有运行。 Sonar如何找到建筑。 旧设施与新设施之间有何不同?