I have a Java 10 modular application, building with Gradle and using JaCoCo.
Version 0.8.0 ca0me with official support for Java 9, and I am using version 0.8.1 which supports Java 10.
> Task :test FAILED
java.lang.NoClassDefFoundError: jdk/internal/reflect/GeneratedSerializationConstructorAccessor1
at jdk.internal.reflect.GeneratedSerializationConstructorAccessor1.newInstance(Unknown Source)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:488)
at java.base/java.io.ObjectStreamClass.newInstance(ObjectStreamClass.java:1081)
at java.base/java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2062)
at java.base/java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1585)
at java.base/java.io.ObjectInputStream.readObject(ObjectInputStream.java:422)
at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:107)
at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:64)
at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:62)
at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:67)
Caused by: java.lang.ClassNotFoundException: jdk.internal.reflect.GeneratedSerializationConstructorAccessor1
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:566)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
... 10 more
<===========--> 88% EXECUTING [24s]
> IDLE
My gradle jacoco
/* JaCoCo configuration */
jacoco {
toolVersion = "0.8.1"
}
jacocoTestReport {
reports {
xml.enabled true
html.enabled true
}
}
test {
useJUnitPlatform()
doFirst {
jvmArgs = [
'--module-path', classpath.asPath
]
}
jacoco {
append = true
def jacocoExec = buildDir.name + "/jacoco/jacoco.exec"
destinationFile = file(jacocoExec)
includeNoLocationClasses = true
}
}