Repository: JakeWharton/timber

Issue #292: IncompatibleClassChangeError:WrongTimberUsageDetector.quickFixIssueThrowable
Created: 2018-02-14T13:19:11Z
Hey guys,
I just updated my root-gradle file from
classpath 'com.android.tools.build:gradle:3.1.0-beta1'
to
classpath 'com.android.tools.build:gradle:3.1.0-beta2'
using Android Studio 3.1 Beta 2 .
As we have abortOnError for our lintOptions, the build breaks.
Stacktrace
> Task :app:lintPayGermanyDebug 
java.lang.IncompatibleClassChangeError: Expected static method timber.lint.WrongTimberUsageDetector.fix()Lcom/android/tools/lint/detector/api/LintFix$Builder;
        at timber.lint.WrongTimberUsageDetector.quickFixIssueThrowable(WrongTimberUsageDetector.java:645)
        at timber.lint.WrongTimberUsageDetector.checkMethodArguments(WrongTimberUsageDetector.java:497)
        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.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.UObjectLiteralExpression$DefaultImpls.accept(UObjectLiteralExpression.kt:56)
        at org.jetbrains.uast.java.JavaUObjectLiteralExpression.accept(JavaUObjectLiteralExpression.kt:24)
        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:497)
        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:497)
        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:88)
        at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
        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:248)
        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:241)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
        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:623)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:578)
        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:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
        at java.lang.Thread.run(Thread.java:745)
Wrote HTML report to 
Wrote XML report to
GIT/dsa_android/app/build/reports/lint-results-payGermanyDebug.xml
Lint found 1 error, 175 warnings


FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:lintPayGermanyDebug'.
> Lint found errors in the project; aborting build.
  
  Fix the issues identified by lint, or add the following to your build script to proceed with errors:
  ...
  android {
      lintOptions {
          abortOnError false
      }
  }
  ...
  
  Errors found:
  
app: Error: Unexpected failure during lint analysis (this is a bug in lint or one of the libraries it depends on)
  
  IncompatibleClassChangeError:WrongTimberUsageDetector.quickFixIssueThrowable(WrongTimberUsageDetector.java:645)←WrongTimberUsageDetector.checkMethodArguments(WrongTimberUsageDetector.java:497)←WrongTimberUsageDetector.visitthod(WrongTimberUsageDetector.java:90)←UElementVisitor$DelegatingPsiVisitor.visitMethodCallExpression(UElementVisitor.kt:1027)←UElementVisitor$DelegatingPsiVisitor.visitCallExpression(UElementVisitor.kt:1007)←UCallExpressionfaultImpls.accept(UCallExpression.kt:99)←JavaUCallExpression.accept(javaUCallExpressions.kt:24)←UQualifiedReferenceExpression$DefaultImpls.accept(UQualifiedReferenceExpression.kt:48)
  
  You can set environment variable LINT_PRINT_STACKTRACE=true to dump a full stacktrace to stdout. [LintError]
  


* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:lintPayGermanyDebug'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:103)
        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:88)
        at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
        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:248)
        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:241)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
        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:623)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:578)
        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 org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: org.gradle.api.GradleException: Lint found errors in the project; aborting build.

Fix the issues identified by lint, or add the following to your build script to proceed with errors:
...
android {
    lintOptions {
        abortOnError false
    }
}
...

Errors found:

.../app: Error: Unexpected failure during lint analysis (this is a bug in lint or one of the libraries it depends on)

IncompatibleClassChangeError:WrongTimberUsageDetector.quickFixIssueThrowable(WrongTimberUsageDetector.java:645)←WrongTimberUsageDetector.checkMethodArguments(WrongTimberUsageDetector.java:497)←WrongTimberUsageDetector.visitMeod(WrongTimberUsageDetector.java:90)←UElementVisitor$DelegatingPsiVisitor.visitMethodCallExpression(UElementVisitor.kt:1027)←UElementVisitor$DelegatingPsiVisitor.visitCallExpression(UElementVisitor.kt:1007)←UCallExpression$DultImpls.accept(UCallExpression.kt:99)←JavaUCallExpression.accept(javaUCallExpressions.kt:24)←UQualifiedReferenceExpression$DefaultImpls.accept(UQualifiedReferenceExpression.kt:48)

You can set environment variable LINT_PRINT_STACKTRACE=true to dump a full stacktrace to stdout. [LintError]


        at com.android.tools.lint.gradle.LintGradleExecution.abort(LintGradleExecution.java:199)
        at com.android.tools.lint.gradle.LintGradleExecution.runLint(LintGradleExecution.java:263)
        at com.android.tools.lint.gradle.LintGradleExecution.lintSingleVariant(LintGradleExecution.java:359)
        at com.android.tools.lint.gradle.LintGradleExecution.analyze(LintGradleExecution.java:93)
        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 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)
        ... 30 more


* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
See https://docs.gradle.org/4.5/userguide/command_line_interface.html#sec:command_line_warnings

Duplicate issue #308: Android Gradle 3.1.0 IncompatibleClassChangeError
Created: 2018-03-27T06:36:05Z
Using 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)

Closing comment (2018-03-27T13:00:11Z): Dupe of #292.