无法为 org.gradle.testing.jacoco.tasks.JacocoReport 类型的任务“...”设置只读属性“classDirectories”的值

Asu*_*sue 40 android build.gradle android-gradle-plugin

我刚刚使用新版本的 Gradle 将我的 Android Studio 更新到 4.0,现在我的构建出错了。

Cannot set the value of read-only property 'classDirectories' for task ':app:testNameOfMyFlavorDebugUnitTestCoverage' of type org.gradle.testing.jacoco.tasks.JacocoReport.

到目前为止它一直工作正常,我不知道要改变什么才能让它再次工作。

Asu*_*sue 61

在这里找到了回复:https : //docs.gradle.org/current/userguide/upgrading_version_5.html#other_deprecated_behaviors_and_apis

在这里:使用 Gradle 过滤 JaCoCo 覆盖率报告

例如,classDirectories被替换为classDirectories.from

  • 这是 gradle 所做的一个愚蠢的非向后兼容的更改。我在 PC 上有一个 gradle 版本,在 IDE 上有另一个版本。看来我现在必须匹配他们的版本了。 (3认同)

Jin*_* Li 16

您需要从 更改classDirectories = SOME_DIRSgetClassDirectories().setFrom(SOME_DIRS)

与 Gradle 6.1.1 一起工作正常