jacoco plugin broken after update of Pipeline Maven Integration plugin

96 views
Skip to first unread message

jenkin...@sourco.de

unread,
Oct 1, 2018, 8:50:31 AM10/1/18
to jenkins...@googlegroups.com
Hello,

I recently updated the Pipeline Maven Integration plugin to version
3.1.2 (from 3.1).

Since then the Jacoco plugin does not work anymore.
Jacoco (code coverage) trend graphs for all past builds are rendered
onto every build page making it unreadable and also very long to load.

In the Jenkins log I see:
java.lang.RuntimeException: While reading class directory: /var/lib/jenkins/jobs/myproject/branches/main/builds/561/jacoco/classes
at hudson.plugins.jacoco.ExecutionFileLoader.analyzeStructure(ExecutionFileLoader.java:131)
at hudson.plugins.jacoco.ExecutionFileLoader.loadBundleCoverage(ExecutionFileLoader.java:137)
at hudson.plugins.jacoco.JacocoReportDir.parse(JacocoReportDir.java:110)
at hudson.plugins.jacoco.JacocoBuildAction.loadRatios(JacocoBuildAction.java:339)
at hudson.plugins.jacoco.JacocoBuildAction.load(JacocoBuildAction.java:326)
at hudson.plugins.jacoco.JacocoPublisher.perform(JacocoPublisher.java:657)
at org.jenkinsci.plugins.pipeline.maven.publishers.JacocoReportPublisher.process(JacocoReportPublisher.java:213)
at org.jenkinsci.plugins.pipeline.maven.MavenSpyLogProcessor.processMavenSpyLogs(MavenSpyLogProcessor.java:118)
at org.jenkinsci.plugins.pipeline.maven.WithMavenStepExecution$WithMavenStepExecutionCallBack.finished(WithMavenStepExecution.java:1053)
at org.jenkinsci.plugins.workflow.steps.BodyExecutionCallback$TailCall.onSuccess(BodyExecutionCallback.java:114)
at org.jenkinsci.plugins.workflow.cps.CpsBodyExecution$SuccessAdapter.receive(CpsBodyExecution.java:368)
at com.cloudbees.groovy.cps.Outcome.resumeFrom(Outcome.java:73)
at com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:166)
at com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:163)
at org.codehaus.groovy.runtime.GroovyCategorySupport$ThreadCategoryInfo.use(GroovyCategorySupport.java:129)
at org.codehaus.groovy.runtime.GroovyCategorySupport.use(GroovyCategorySupport.java:268)
at com.cloudbees.groovy.cps.Continuable.run0(Continuable.java:163)
at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.access$101(SandboxContinuable.java:34)
at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.lambda$run0$0(SandboxContinuable.java:59)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovySandbox.runInSandbox(GroovySandbox.java:108)
at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.run0(SandboxContinuable.java:58)
at org.jenkinsci.plugins.workflow.cps.CpsThread.runNextChunk(CpsThread.java:182)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:332)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$200(CpsThreadGroup.java:83)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:244)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:232)
at org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:64)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:131)
at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:59)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalStateException: basedir /var/lib/jenkins/jobs/myproject/branches/main/builds/561/jacoco/classes does not exist
at org.codehaus.plexus.util.DirectoryScanner.scan(DirectoryScanner.java:281)
at org.codehaus.plexus.util.FileUtils.getFileAndDirectoryNames(FileUtils.java:1940)
at org.codehaus.plexus.util.FileUtils.getFileNames(FileUtils.java:1868)
at org.codehaus.plexus.util.FileUtils.getFileNames(FileUtils.java:1850)
at org.codehaus.plexus.util.FileUtils.getFiles(FileUtils.java:1825)
at org.codehaus.plexus.util.FileUtils.getFiles(FileUtils.java:1808)
at hudson.plugins.jacoco.ExecutionFileLoader.analyzeStructure(ExecutionFileLoader.java:124)
... 35 more


However the directory /var/lib/jenkins/jobs/myproject/branches/main/builds/561/jacoco/classes exists
and is readable (same applies for all the files in there).

My job is a multibranch pipeline and Jenkins is at version 2.144.

Anybody else experiencing that?

Thanks and regards,
Felix

KeithC

unread,
Oct 18, 2018, 4:57:58 AM10/18/18
to Jenkins Users
I'm experiencing the same terrible rendering behavior.  I haven't checked my jenkins logs.

I can't uninstall the jacoco plugin either, since the pipeline maven integration plugin has it as a dependency. 

~ kc

KeithC

unread,
Oct 18, 2018, 4:57:58 AM10/18/18
to Jenkins Users
FYI, I created a bug report for this:  https://issues.jenkins-ci.org/browse/JENKINS-54139

On Monday, October 1, 2018 at 5:50:31 AM UTC-7, jenkin...@sourco.de wrote:

Cyrille Le Clerc

unread,
Oct 18, 2018, 5:42:08 PM10/18/18
to Jenkins Users
Hi,


Thanks Keith for filling the bug.

Cyrille

Cyrille Le Clerc

unread,
Oct 22, 2018, 1:38:09 PM10/22/18
to Jenkins Users
Can you please test the fix to prevent rendering publishing multiple jacoco reports in case of Maven multi-module projects with multiple usage of jacoco.

Reply all
Reply to author
Forward
0 new messages