Description
openedon Apr 25, 2019
Platform: Mac OSX 10.14.3
Compiler: Kotlinc-1.3.21 / Kapt
JVM: jdk1.8.0_162 (yeah yeah)
Builder: Bazel 0.22 (with a back-ported aar_import fix)
After upgrading a bazel-based build from 2.21 to dagger 2.22, the following started occurring. Dagger upstream deps are automatically handled by the maven integration, though the system uses version-pinning, so it's possible this is merely a dependency versioning problem. I'm auditing that now, but it seems odd that it would be so, insofar as it's throwing this issue around one class in dagger-2.22.jar artifact (@Component
and @Component.Factory
)
Error doesn't seem to happen with gradle, which lends a bit of support to it being a deps issue, as a few of these ICCE throws have been in the past.
Caused by: java.lang.IncompatibleClassChangeError: dagger.Component and dagger.Component$Factory disagree on InnerClasses attribute
at java.base/java.lang.Class.getDeclaringClass0(Native Method)
at java.base/java.lang.Class.isTopLevelClass(Unknown Source)
at java.base/java.lang.Class.getSimpleBinaryName(Unknown Source)
at java.base/java.lang.Class.getSimpleName(Unknown Source)
at dagger.internal.codegen.ComponentCreatorAnnotation.<init>(ComponentCreatorAnnotation.java:53)
at dagger.internal.codegen.ComponentCreatorAnnotation.<clinit>(ComponentCreatorAnnotation.java:38)
at dagger.internal.codegen.ComponentProcessingStep.annotations(ComponentProcessingStep.java:93)
at dagger.internal.codegen.DaggerStatisticsCollectingProcessingStep.annotations(DaggerStatisticsCollectingProcessingStep.java:44)
at dagger.shaded.auto.common.BasicAnnotationProcessor.getSupportedAnnotationClasses(BasicAnnotationProcessor.java:146)
at dagger.shaded.auto.common.BasicAnnotationProcessor.getSupportedAnnotationTypes(BasicAnnotationProcessor.java:158)
at dagger.shaded.auto.common.BasicAnnotationProcessor.getSupportedAnnotationTypes(BasicAnnotationProcessor.java:103)
at org.jetbrains.kotlin.kapt3.base.ProcessorWrapper.getSupportedAnnotationTypes(annotationProcessing.kt:132)
Note: This may well not be dagger's problem, but I'm posting it here since the one variable I change is dagger version number, and in case others run into this.