diff-coverage-gradle icon indicating copy to clipboard operation
diff-coverage-gradle copied to clipboard

java.lang.ClassCastException

Open OscarManuelVergara opened this issue 2 years ago • 1 comments

Enviroment: Android Studio 4.2.2 Gradle plugin 6.7 diffCoveragePlugin: 0.9.1

Caused by: java.lang.ClassCastException: org.gradle.api.DefaultTask_Decorated cannot be cast to org.gradle.testing.jacoco.tasks.JacocoReport
        at com.form.coverage.gradle.DiffTaskAutoConfigurationKt$jacocoTestReportsSettings$3.invoke(DiffTaskAutoConfiguration.kt:58)
        at com.form.coverage.gradle.DiffTaskAutoConfigurationKt$jacocoTestReportsSettings$3.invoke(DiffTaskAutoConfiguration.kt)
        at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:172)
        at com.form.coverage.gradle.DiffTaskAutoConfigurationKt.jacocoTestReportsSettings(DiffTaskAutoConfiguration.kt:99)
        at com.form.coverage.gradle.DiffTaskAutoConfigurationKt.collectFileCollectionOrAutoconfigure(DiffTaskAutoConfiguration.kt:47)
        at com.form.coverage.gradle.DiffTaskAutoConfigurationKt.collectFileCollectionOrThrow(DiffTaskAutoConfiguration.kt:9)
        at com.form.coverage.gradle.DiffCoverageTask.getSourcesFiles(DiffCoverageTask.kt:30)
        at org.gradle.api.internal.tasks.properties.bean.AbstractNestedRuntimeBeanNode$BeanPropertyValue$1$1.create(AbstractNestedRuntimeBeanNode.java:77)
        at org.gradle.internal.deprecation.DeprecationLogger.whileDisabled(DeprecationLogger.java:236)
        at org.gradle.api.internal.tasks.properties.bean.AbstractNestedRuntimeBeanNode$BeanPropertyValue$1.get(AbstractNestedRuntimeBeanNode.java:73)
        at com.google.common.base.Suppliers$NonSerializableMemoizingSupplier.get(Suppliers.java:167)
        at org.gradle.api.internal.tasks.properties.bean.AbstractNestedRuntimeBeanNode$BeanPropertyValue.call(AbstractNestedRuntimeBeanNode.java:133)
        at org.gradle.util.GUtil.uncheckedCall(GUtil.java:442)
        at org.gradle.util.DeferredUtil.unpackNestableDeferred(DeferredUtil.java:64)
        at org.gradle.api.internal.file.collections.UnpackingVisitor.add(UnpackingVisitor.java:84)
        at org.gradle.api.internal.file.DefaultFileCollectionFactory$ResolvingFileCollection.visitChildren(DefaultFileCollectionFactory.java:310)
        at org.gradle.api.internal.file.CompositeFileCollection.visitDependencies(CompositeFileCollection.java:108)
        at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext$TaskGraphImpl.getNodeValues(CachingTaskDependencyResolveContext.java:112)
        at org.gradle.internal.graph.CachingDirectedGraphWalker$GraphWithEmptyEdges.getNodeValues(CachingDirectedGraphWalker.java:213)
        at org.gradle.internal.graph.CachingDirectedGraphWalker.doSearch(CachingDirectedGraphWalker.java:121)
        at org.gradle.internal.graph.CachingDirectedGraphWalker.findValues(CachingDirectedGraphWalker.java:73)
        at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext.getDependencies(CachingTaskDependencyResolveContext.java:67)
        ... 114 more

OscarManuelVergara avatar Apr 08 '22 14:04 OscarManuelVergara

Hi @OscarManuelVergara

Do you have a custom task with name jacocoTestReport in your project ?


As a workaround you could disable autoconfiguration of the plugin by specifying exec, classes, src:

diffCoverageReport {
    ...

    jacocoExecFiles = files(subprojects.jacocoTestReport.executionData)
    classesDirs = files(subprojects.jacocoTestReport.classDirectories)
    srcDirs = files(subprojects.jacocoTestReport.sourceDirectories)

   ...

SurpSG avatar Apr 11 '22 09:04 SurpSG