Hello, Can someone please assist or point me in the right direction on gradle error seen during the build using JaCoCo plugin executing via Jenkins? Thanks in advance! See details below on my setup and steps performed.
I am running Jenkins Job that has uses Gradle plugin(V1.26 from *https://wiki.jenkins-ci.org/display/JENKINS/Gradle+Plugin* <https://wiki.jenkins-ci.org/display/JENKINS/Gradle+Plugin>) & JaCoCo plugin(V2.2.0 from *https://wiki.jenkins-ci.org/display/JENKINS/JaCoCo+Plugin* <https://wiki.jenkins-ci.org/display/JENKINS/JaCoCo+Plugin>). Here is how the Configuration in Jenkins Job is for Gradle & JaCoCo: *Gradle Plugin*(uses build.gradle): 1. Uses Gradle Version 2.9 installed on Jenkins server 2. Calls gradle tasks "clean testjar -Dtest.single=AllTestsSuite test -DENVIRONMENT=dev2". Note that -DENVIRONMENT is property used for distinguishing our test environments *JaCoCo Plugin*: Configured for recording of JacoCo coverage report The build.gradle changes for executing jacocoTestReport has been done using instructions at *https://docs.gradle.org/2.9/userguide/jacoco_plugin.html* <https://docs.gradle.org/2.9/userguide/jacoco_plugin.html> and the build.gradle for is as below: apply plugin: 'jacoco' ext.buildWS = System.getenv('WORKSPACE') test { println 'INFO: JUnit Test Properties' jvmArgs "-javaagent:${configurations.testJMockitAgent.asPath}","-javaagent:${configurations.testSpringInstrumentAgent.asPath}" // Override the DB type for this set of tests systemProperties = System.getProperties(); systemProperties['user.dir'] = workingDir //systemProperty 'ENVIRONMENT', 'dev2' testLogging { // Show that tests are run in the command-line output events 'started', 'passed' } finalizedBy jacocoTestReport } jacoco { toolVersion = "0.7.1.201405082137" } jacocoTestReport { group = "Reporting" description = "Generate Jacoco coverage reports after running tests." reports { html.enabled true xml.enabled true csv.enabled false html.destination "${buildWS}/jacocoHtml" } } But the following is failing in Jenkins with the below mentioned error after the "test" task is executed. In the build workspace, I can see that test.exec is getting generated in the /<builddir>/build/jacoco/ : --------------Many Lines Deleted----------------- 14:53:15 :jacocoTestReport FAILED 14:53:15 14:53:15 FAILURE: Build failed with an exception. 14:53:15 14:53:15 * What went wrong: 14:53:15 Execution failed for task ':jacocoTestReport'. 14:53:15 > org.jacoco.report.IReportGroupVisitor 14:53:15 14:53:15 * Try: 14:53:15 Run with --info or --debug option to get more log output. 14:53:15 14:53:15 * Exception is: 14:53:15 org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':jacocoTestReport'. 14:53:15 at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69) 14:53:15 at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46) 14:53:15 at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35) 14:53:15 at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64) 14:53:15 at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58) 14:53:15 at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52) 14:53:15 at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52) 14:53:15 at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53) 14:53:15 at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43) 14:53:15 at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203) 14:53:15 at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185) 14:53:15 at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66) 14:53:15 at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50) 14:53:15 at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25) 14:53:15 at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110) 14:53:15 at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37) 14:53:15 at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37) 14:53:15 at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23) 14:53:15 at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43) 14:53:15 at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32) 14:53:15 at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37) 14:53:15 at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30) 14:53:15 at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:154) 14:53:15 at org.gradle.internal.Factories$1.create(Factories.java:22) 14:53:15 at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90) 14:53:15 at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:52) 14:53:15 at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:151) 14:53:15 at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32) 14:53:15 at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:99) 14:53:15 at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:93) 14:53:15 at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90) 14:53:15 at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:62) 14:53:15 at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:93) 14:53:15 at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:82) 14:53:15 at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:94) 14:53:15 at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28) 14:53:15 at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35) 14:53:15 at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:43) 14:53:15 at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:28) 14:53:15 at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:77) 14:53:15 at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:47) 14:53:15 at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:51) 14:53:15 at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:28) 14:53:15 at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:43) 14:53:15 at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:170) 14:53:15 at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:237) 14:53:15 at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:210) 14:53:15 at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35) 14:53:15 at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24) 14:53:15 at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:206) 14:53:15 at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169) 14:53:15 at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33) 14:53:15 at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22) 14:53:15 at org.gradle.launcher.Main.doAction(Main.java:33) 14:53:15 at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45) 14:53:15 at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54) 14:53:15 at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35) 14:53:15 at org.gradle.launcher.GradleMain.main(GradleMain.java:23) 14:53:15 Caused by: java.lang.NoClassDefFoundError: org.jacoco.report.IReportGroupVisitor 14:53:15 at org.apache.tools.ant.ComponentHelper.checkTaskClass(ComponentHelper.java:376) 14:53:15 at org.apache.tools.ant.ComponentHelper.addTaskDefinition(ComponentHelper.java:341) 14:53:15 at org.apache.tools.ant.Project.addTaskDefinition(Project.java:968) 14:53:15 at org.apache.tools.ant.Project$addTaskDefinition.call(Unknown Source) 14:53:15 at org.gradle.api.internal.project.antbuilder.AntBuilderDelegate.taskdef(AntBuilderDelegate.groovy:34) 14:53:15 at org.gradle.api.internal.project.antbuilder.AntBuilderDelegate$taskdef.call(Unknown Source) 14:53:15 at org.gradle.testing.jacoco.tasks.JacocoReport$*generate* closure2.doCall(JacocoReport.groovy:88) 14:53:15 at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:67) 14:53:15 at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:130) 14:53:15 at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:91) 14:53:15 at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:140) 14:53:15 at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:122) 14:53:15 at org.gradle.api.internal.project.antbuilder.ClassPathToClassLoaderCache.withCachedClassLoader(ClassPathToClassLoaderCache.java:134) 14:53:15 at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder.execute(DefaultIsolatedAntBuilder.java:116) 14:53:15 at org.gradle.api.internal.project.IsolatedAntBuilder$execute$0.call(Unknown Source) 14:53:15 at org.gradle.testing.jacoco.tasks.JacocoReport.generate(JacocoReport.groovy:87) 14:53:15 at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75) 14:53:15 at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:227) 14:53:15 at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:220) 14:53:15 at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:209) 14:53:15 at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:585) 14:53:15 at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:568) 14:53:15 at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80) 14:53:15 at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61) 14:53:15 ... 57 more 14:53:15 Caused by: java.lang.ClassNotFoundException: org.jacoco.report.IReportGroupVisitor 14:53:15 ... 81 more ---------------------------------------------------- Thanks, Mak -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/6c4057db-4772-4f7a-a858-3127226a89e5%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.