Eike Thaden created KAFKA-15235:
---
Summary: No test coverage reports for Java due to settings for
Jacoco being incompatible with Gradle 8.x
Key: KAFKA-15235
URL: https://issues.apache.org/jira/browse/KAFKA-15235
Project: Kafka
Issue Type: Bug
Components: unit tests
Affects Versions: 3.6.0
Reporter: Eike Thaden
On current dev branch, gradle 8.x fails while trying to generate test coverage
reports as stated in the README, e.g. by running "./gradlew
clients:reportCoverage -PenableTestCoverage=true -Dorg.gradle.parallel=false".
The error message states:
"Could not set unknown property 'enabled' for Report html of type
org.gradle.api.reporting.internal.TaskGeneratedSingleDirectoryReport"
In "build.gradle", the library "jacoco" which is used to generate test coverage
reports for the Java code is configured in two different places with these
settings:
jacocoTestReport {
dependsOn tasks.test
sourceSets sourceSets.main
reports {
html.enabled = true
xml.enabled = true
csv.enabled = false
}
}
With the latest version of jacoco, shipped with gradle 8.x, these config
options are not compatible anymore. A correct configuration might look like
like this:
jacocoTestReport {
dependsOn tasks.test
sourceSets sourceSets.main
reports {
html {
required = true
}
xml {
required = true
}
csv {
required = false
}
}
}
However, even with these settings being accepted by Gradle, I was unable to
generate any test coverage report. This might be due to some OOM issues, but I
tried a lots of settings including increasing the maximum heap for the JVM
gradle tasks without getting this to work.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)