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) & JaCoCo plugin(V2.2.0 from
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
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$generateclosure2.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