Android Gradle 3.1.0 IncompatibleClassChangeError
See original GitHub issueUsing Timber 4.6.1 with Android Gradle Plugin com.android.tools.build:gradle:3.1.0 lint fails with a IncompatibleClassChangeError.
In the meantime, I’ve added a rule to disable the error. Not ideal but it lets the CI pass builds for now.
lintOptions {
disable "LintError"
}
java.lang.IncompatibleClassChangeError: Expected static method timber.lint.WrongTimberUsageDetector.fix()Lcom/android/tools/lint/detector/api/LintFix$Builder;
at timber.lint.WrongTimberUsageDetector.quickFixIssueBinary(WrongTimberUsageDetector.java:671)
at timber.lint.WrongTimberUsageDetector.checkElement(WrongTimberUsageDetector.java:558)
at timber.lint.WrongTimberUsageDetector.checkMethodArguments(WrongTimberUsageDetector.java:493)
at timber.lint.WrongTimberUsageDetector.visitMethod(WrongTimberUsageDetector.java:90)
at com.android.tools.lint.client.api.UElementVisitor$DelegatingPsiVisitor.visitMethodCallExpression(UElementVisitor.kt:1027)
at com.android.tools.lint.client.api.UElementVisitor$DelegatingPsiVisitor.visitCallExpression(UElementVisitor.kt:1007)
at org.jetbrains.uast.UCallExpression$DefaultImpls.accept(UCallExpression.kt:99)
at org.jetbrains.uast.java.JavaUCallExpression.accept(javaUCallExpressions.kt:24)
at org.jetbrains.uast.UQualifiedReferenceExpression$DefaultImpls.accept(UQualifiedReferenceExpression.kt:48)
at org.jetbrains.uast.java.JavaUCompositeQualifiedExpression.accept(JavaUCompositeQualifiedExpression.kt:22)
at org.jetbrains.uast.ULambdaExpression$DefaultImpls.accept(ULambdaExpression.kt:47)
at org.jetbrains.uast.java.JavaULambdaExpression.accept(JavaULambdaExpression.kt:26)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UCallExpression$DefaultImpls.accept(UCallExpression.kt:103)
at org.jetbrains.uast.java.JavaUCallExpression.accept(javaUCallExpressions.kt:24)
at org.jetbrains.uast.UQualifiedReferenceExpression$DefaultImpls.accept(UQualifiedReferenceExpression.kt:48)
at org.jetbrains.uast.java.JavaUCompositeQualifiedExpression.accept(JavaUCompositeQualifiedExpression.kt:22)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UBlockExpression$DefaultImpls.accept(UBlockExpression.kt:35)
at org.jetbrains.uast.java.JavaUCodeBlockExpression.accept(JavaUCodeBlockExpression.kt:22)
at org.jetbrains.uast.UMethod$DefaultImpls.accept(UMethod.kt:53)
at org.jetbrains.uast.java.JavaUMethod.accept(JavaUMethod.kt:25)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UClass$DefaultImpls.accept(UClass.kt:63)
at org.jetbrains.uast.java.AbstractJavaUClass.accept(JavaUClass.kt:26)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UFile$DefaultImpls.accept(UFile.kt:91)
at org.jetbrains.uast.java.JavaUFile.accept(JavaUFile.kt:24)
at com.android.tools.lint.client.api.UElementVisitor$visitFile$3.run(UElementVisitor.kt:258)
at com.android.tools.lint.client.api.LintClient.runReadAction(LintClient.kt:1439)
at com.android.tools.lint.client.api.LintDriver$LintClientWrapper.runReadAction(LintDriver.kt:1900)
at com.android.tools.lint.client.api.UElementVisitor.visitFile(UElementVisitor.kt:255)
at com.android.tools.lint.client.api.LintDriver$visitJavaFiles$1.run(LintDriver.kt:1476)
at com.android.tools.lint.client.api.LintClient.runReadAction(LintClient.kt:1439)
at com.android.tools.lint.client.api.LintDriver$LintClientWrapper.runReadAction(LintDriver.kt:1900)
at com.android.tools.lint.client.api.LintDriver.visitJavaFiles(LintDriver.kt:1476)
at com.android.tools.lint.client.api.LintDriver.visitJavaFiles(LintDriver.kt:1445)
at com.android.tools.lint.client.api.LintDriver.checkJava(LintDriver.kt:1423)
at com.android.tools.lint.client.api.LintDriver.runFileDetectors(LintDriver.kt:962)
at com.android.tools.lint.client.api.LintDriver.checkProject(LintDriver.kt:812)
at com.android.tools.lint.client.api.LintDriver.analyze(LintDriver.kt:345)
at com.android.tools.lint.LintCliClient.run(LintCliClient.java:179)
at com.android.tools.lint.gradle.LintGradleClient.run(LintGradleClient.java:254)
at com.android.tools.lint.gradle.LintGradleExecution.runLint(LintGradleExecution.java:257)
at com.android.tools.lint.gradle.LintGradleExecution.lintSingleVariant(LintGradleExecution.java:359)
at com.android.tools.lint.gradle.LintGradleExecution.analyze(LintGradleExecution.java:93)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.android.tools.lint.gradle.api.ReflectiveLintRunner.runLint(ReflectiveLintRunner.kt:38)
at com.android.build.gradle.tasks.LintBaseTask.runLint(LintBaseTask.java:87)
at com.android.build.gradle.tasks.LintPerVariantTask.lint(LintPerVariantTask.java:41)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:46)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:788)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:755)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:124)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:113)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:95)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:73)
at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59)
at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101)
at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91)
at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:256)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:249)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:238)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:123)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:79)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:104)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:98)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:663)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:597)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:98)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
at java.lang.Thread.run(Thread.java:748)
Issue Analytics
- State:
- Created 5 years ago
- Reactions:2
- Comments:5 (3 by maintainers)
Top Results From Across the Web
UncaughtException: java.lang.IncompatibleClassChangeError
My app was working fine, but When I updated compile 'com.google.android.gms:play-services from version 8.0 to 9.0 it gives following exception.
Read more >java.lang.IncompatibleClassChangeError on com.android ...
When using com.android.tools.build:gradle:4.0.0 some Kotlin to Java conversions during release build fail producing the following error java.lang.
Read more >Android Studio 2021.3.1 Closed Issues
IncompatibleClassChangeError with R8 - 3.3.28 (Android API < 25). Issue #232379893. Gradle 7.2.0 causing APK build error com.android.tools.r8.
Read more >Found class org.jetbrains.kotlin.ir.declarations.IrClass, but ...
JVM / IR: "IncompatibleClassChangeError: Found class org.jetbrains.kotlin.ir.declarations.IrClass, but interface was expected" with Compose. Android Studio ...
Read more >The Java Plugin - Gradle User Manual
Depends on: build , and buildNeeded tasks in all projects that are dependencies in the testRuntimeClasspath configuration. Performs a full build of the...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found

No problem. Fix was released today as 4.7.0.
On Tue, Mar 27, 2018 at 4:49 PM mt-mitchell notifications@github.com wrote:
Already fixed on matter and just needs a new release. Also there has been other issues about this already.