执行 com.android.build.gradle.internal.coverage.JacocoReportTask$JacocoReportWorkerAction 时发生故障
A failure occurred while executing com.android.build.gradle.internal.coverage.JacocoReportTask$JacocoReportWorkerAction
我想为我的项目生成代码覆盖率,所以我添加了,
debug {
testCoverageEnabled true
}
当我 运行 命令 gradlew createDebugCoverageReport
我得到以下错误
Execution failed for task ':app:createDebugAndroidTestCoverageReport'.
> A failure occurred while executing com.android.build.gradle.internal.coverage.JacocoReportTask$JacocoReportWorkerAction
>Unable to generate Jacoco report
在示例项目中使用相同的 gradle 版本和 kotlin 版本,
它在我的主要项目中给出错误。
经过大量研究,我发现这是 jacoco 的问题,感谢这个 issue 和它在 youtrack 中的评论,它们为我指出了正确的方向。要解决此问题,请将 jacoco 升级到版本 0.8.7
在应用级别 build.gradle
文件中添加以下行
plugins{
...
id 'jacoco'
}
jacoco {
toolVersion = "0.8.7"
}
android {
...
}
dependencies{
...
}
configurations.all{
resolutionStrategy {
eachDependency { details ->
if ('org.jacoco' == details.requested.group) {
details.useVersion "0.8.7"
}
}
}
}
我不确定为什么它在示例应用程序中有效
如果in-case,如果使用build.gradle.kts
plugins {
...
jacoco
}
jacoco {
toolVersion = "0.8.7"
}
configurations.all {
resolutionStrategy {
eachDependency {
if (requested.group == "org.jacoco") {
useVersion("0.8.7")
}
}
}
}
我想为我的项目生成代码覆盖率,所以我添加了,
debug {
testCoverageEnabled true
}
当我 运行 命令 gradlew createDebugCoverageReport
我得到以下错误
Execution failed for task ':app:createDebugAndroidTestCoverageReport'.
> A failure occurred while executing com.android.build.gradle.internal.coverage.JacocoReportTask$JacocoReportWorkerAction
>Unable to generate Jacoco report
在示例项目中使用相同的 gradle 版本和 kotlin 版本, 它在我的主要项目中给出错误。
经过大量研究,我发现这是 jacoco 的问题,感谢这个 issue 和它在 youtrack 中的评论,它们为我指出了正确的方向。要解决此问题,请将 jacoco 升级到版本 0.8.7
在应用级别 build.gradle
文件中添加以下行
plugins{
...
id 'jacoco'
}
jacoco {
toolVersion = "0.8.7"
}
android {
...
}
dependencies{
...
}
configurations.all{
resolutionStrategy {
eachDependency { details ->
if ('org.jacoco' == details.requested.group) {
details.useVersion "0.8.7"
}
}
}
}
我不确定为什么它在示例应用程序中有效
如果in-case,如果使用build.gradle.kts
plugins {
...
jacoco
}
jacoco {
toolVersion = "0.8.7"
}
configurations.all {
resolutionStrategy {
eachDependency {
if (requested.group == "org.jacoco") {
useVersion("0.8.7")
}
}
}
}