Status Update
Comments
in...@lessimp.com <in...@lessimp.com> #2
The WebViewApiAvailabilityDetector
is a red-herring: even with this check ignored, we're getting this failure with other detectors too (e.g. androidx.fragment.lint.UseRequireInsteadOfGet
.
I didn't mention in the OP, but we're using a baseline with "warningsAsErrors":
lintOptions {
baseline file("$rootDir/config/lint-baseline.xml")
warningsAsErrors true
lintConfig file("$rootDir/config/lint.xml")
checkDependencies true
checkGeneratedSources false
checkTestSources false
ignoreTestSources true
checkReleaseBuilds false
}
Here's another stack trace.
java.lang.NullPointerException
at org.jetbrains.kotlin.asJava.classes.KtLightClassForFacade.getLightClassData(KtLightClassForFacade.kt:182)
at org.jetbrains.kotlin.asJava.classes.KtLazyLightClass.getOwnMethods(KtLazyLightClass.kt:29)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.getAllMethods(KotlinClassInnerStuffCache.kt:150)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.access$getAllMethods(KotlinClassInnerStuffCache.kt:27)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:91)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:27)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$get$1$holder$1$1.compute(KotlinClassInnerStuffCache.kt:36)
at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54)
at com.intellij.util.CachedValueBase.lambda$getValueWithLock$1(CachedValueBase.java:240)
at com.intellij.openapi.util.RecursionManager$1.doPreventingRecursion(RecursionManager.java:113)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:71)
at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:241)
at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:43)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$get$1.computeValue(KotlinClassInnerStuffCache.kt:41)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$get$1.getValue(KotlinClassInnerStuffCache.kt:65)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.get_getMethods(KotlinClassInnerStuffCache.kt)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.getMethods(KotlinClassInnerStuffCache.kt:94)
at org.jetbrains.kotlin.asJava.classes.KtLightClassBase.getMethods(KtLightClassBase.kt:40)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.getMethodBySignature(kotlinInternalUastUtils.kt:206)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.getMethodBySignature(kotlinInternalUastUtils.kt:202)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveDeserialized(kotlinInternalUastUtils.kt:153)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveDeserialized$default(kotlinInternalUastUtils.kt:141)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveSource(kotlinInternalUastUtils.kt:106)
at org.jetbrains.uast.kotlin.KotlinUFunctionCallExpression.resolve(KotlinUFunctionCallExpression.kt:201)
at androidx.fragment.lint.UseRequireInsteadOfGet$createUastHandler$1.visitCallExpression(UseRequireInsteadOfGet.kt:143)
at com.android.tools.lint.client.api.UElementVisitor$DispatchPsiVisitor.visitCallExpression(UElementVisitor.kt:561)
at com.android.tools.lint.client.api.UElementVisitor$DelegatingPsiVisitor.visitCallExpression(UElementVisitor.kt:1057)
at org.jetbrains.uast.kotlin.KotlinUFunctionCallExpression.accept(KotlinUFunctionCallExpression.kt:205)
at org.jetbrains.uast.UQualifiedReferenceExpression$DefaultImpls.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.kotlin.KotlinUQualifiedReferenceExpression.accept(KotlinUQualifiedReferenceExpression.kt:27)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UBlockExpression$DefaultImpls.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.kotlin.KotlinUBlockExpression.accept(KotlinUBlockExpression.kt:24)
at org.jetbrains.uast.UIfExpression$DefaultImpls.accept(UIfExpression.kt:59)
at org.jetbrains.uast.kotlin.KotlinUIfExpression.accept(KotlinUIfExpression.kt:24)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UBlockExpression$DefaultImpls.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.kotlin.KotlinUBlockExpression.accept(KotlinUBlockExpression.kt:24)
at org.jetbrains.uast.UMethod$DefaultImpls.accept(UMethod.kt:41)
at org.jetbrains.uast.UMethodTypeSpecific$DefaultImpls.accept(UMethod.kt)
at org.jetbrains.uast.kotlin.declarations.KotlinUMethod.accept(KotlinUMethod.kt:32)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.kotlin.AbstractKotlinUClass.accept(KotlinUClass.kt:67)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UFile$DefaultImpls.accept(UFile.kt:83)
at org.jetbrains.uast.kotlin.KotlinUFile.accept(KotlinUFile.kt:30)
at com.android.tools.lint.client.api.UElementVisitor$visitFile$3.run(UElementVisitor.kt:276)
at com.android.tools.lint.client.api.LintClient.runReadAction(LintClient.kt:1666)
at com.android.tools.lint.client.api.LintDriver$LintClientWrapper.runReadAction(LintDriver.kt:2223)
at com.android.tools.lint.client.api.UElementVisitor.visitFile(UElementVisitor.kt:273)
at com.android.tools.lint.client.api.LintDriver$visitUast$1.run(LintDriver.kt:1726)
at com.android.tools.lint.client.api.LintClient.runReadAction(LintClient.kt:1666)
at com.android.tools.lint.client.api.LintDriver$LintClientWrapper.runReadAction(LintDriver.kt:2223)
at com.android.tools.lint.client.api.LintDriver.visitUast(LintDriver.kt:1726)
at com.android.tools.lint.client.api.LintDriver.runFileDetectors(LintDriver.kt:1114)
at com.android.tools.lint.client.api.LintDriver.checkProject(LintDriver.kt:926)
at com.android.tools.lint.client.api.LintDriver.analyze(LintDriver.kt:426)
at com.android.tools.lint.LintCliClient.run(LintCliClient.kt:252)
at com.android.tools.lint.gradle.LintGradleClient.run(LintGradleClient.java:299)
at com.android.tools.lint.gradle.LintGradleExecution.runLint(LintGradleExecution.java:307)
at com.android.tools.lint.gradle.LintGradleExecution.lintSingleVariant(LintGradleExecution.java:398)
at com.android.tools.lint.gradle.LintGradleExecution.analyze(LintGradleExecution.java:96)
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:114)
at com.android.build.gradle.tasks.LintPerVariantTask.lint(LintPerVariantTask.java:64)
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:104)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:49)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:42)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:28)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:727)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:694)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.run(ExecuteActionsTaskExecuter.java:568)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:553)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:536)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access$300(ExecuteActionsTaskExecuter.java:109)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.executeWithPreviousOutputFiles(ExecuteActionsTaskExecuter.java:276)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.execute(ExecuteActionsTaskExecuter.java:265)
at org.gradle.internal.execution.steps.ExecuteStep.lambda$execute$1(ExecuteStep.java:33)
at java.util.Optional.orElseGet(Optional.java:267)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:33)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:26)
at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:67)
at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:36)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:49)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:34)
at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:43)
at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:73)
at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:54)
at org.gradle.internal.execution.steps.CatchExceptionStep.execute(CatchExceptionStep.java:34)
at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:44)
at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:54)
at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:38)
at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:49)
at org.gradle.internal.execution.steps.CacheStep.executeWithoutCache(CacheStep.java:159)
at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:72)
at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:43)
at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:44)
at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:33)
at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:38)
at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:24)
at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:92)
at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:85)
at java.util.Optional.map(Optional.java:215)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:55)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:39)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:76)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:37)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:36)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:26)
at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:94)
at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:49)
at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:79)
at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:53)
at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:74)
at org.gradle.internal.execution.steps.SkipEmptyWorkStep.lambda$execute$2(SkipEmptyWorkStep.java:78)
at java.util.Optional.orElseGet(Optional.java:267)
at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:78)
at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:34)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:39)
at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:40)
at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:28)
at org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:33)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:192)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:184)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:372)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:359)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:352)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:338)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
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:56)
at java.lang.Thread.run(Thread.java:748)
java.lang.NullPointerException
at org.jetbrains.kotlin.asJava.classes.KtLightClassForFacade.getLightClassData(KtLightClassForFacade.kt:182)
at org.jetbrains.kotlin.asJava.classes.KtLazyLightClass.getOwnMethods(KtLazyLightClass.kt:29)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.getAllMethods(KotlinClassInnerStuffCache.kt:150)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.access$getAllMethods(KotlinClassInnerStuffCache.kt:27)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:91)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:27)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$get$1$holder$1$1.compute(KotlinClassInnerStuffCache.kt:36)
at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54)
at com.intellij.util.CachedValueBase.lambda$getValueWithLock$1(CachedValueBase.java:240)
at com.intellij.openapi.util.RecursionManager$1.doPreventingRecursion(RecursionManager.java:113)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:71)
at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:241)
at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:43)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$get$1.computeValue(KotlinClassInnerStuffCache.kt:41)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$get$1.getValue(KotlinClassInnerStuffCache.kt:65)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.get_getMethods(KotlinClassInnerStuffCache.kt)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.getMethods(KotlinClassInnerStuffCache.kt:94)
at org.jetbrains.kotlin.asJava.classes.KtLightClassBase.getMethods(KtLightClassBase.kt:40)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.getMethodBySignature(kotlinInternalUastUtils.kt:206)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.getMethodBySignature(kotlinInternalUastUtils.kt:202)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveDeserialized(kotlinInternalUastUtils.kt:153)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveDeserialized$default(kotlinInternalUastUtils.kt:141)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveSource(kotlinInternalUastUtils.kt:106)
at org.jetbrains.uast.kotlin.KotlinUFunctionCallExpression.resolve(KotlinUFunctionCallExpression.kt:201)
at androidx.fragment.lint.UseRequireInsteadOfGet$createUastHandler$1.visitCallExpression(UseRequireInsteadOfGet.kt:143)
at com.android.tools.lint.client.api.UElementVisitor$DispatchPsiVisitor.visitCallExpression(UElementVisitor.kt:561)
at com.android.tools.lint.client.api.UElementVisitor$DelegatingPsiVisitor.visitCallExpression(UElementVisitor.kt:1057)
at org.jetbrains.uast.kotlin.KotlinUFunctionCallExpression.accept(KotlinUFunctionCallExpression.kt:205)
at org.jetbrains.uast.UQualifiedReferenceExpression$DefaultImpls.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.kotlin.KotlinUQualifiedReferenceExpression.accept(KotlinUQualifiedReferenceExpression.kt:27)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UBlockExpression$DefaultImpls.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.kotlin.KotlinUBlockExpression.accept(KotlinUBlockExpression.kt:24)
at org.jetbrains.uast.UMethod$DefaultImpls.accept(UMethod.kt:41)
at org.jetbrains.uast.UMethodTypeSpecific$DefaultImpls.accept(UMethod.kt)
at org.jetbrains.uast.kotlin.declarations.KotlinUMethod.accept(KotlinUMethod.kt:32)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.kotlin.AbstractKotlinUClass.accept(KotlinUClass.kt:67)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UFile$DefaultImpls.accept(UFile.kt:83)
at org.jetbrains.uast.kotlin.KotlinUFile.accept(KotlinUFile.kt:30)
at com.android.tools.lint.client.api.UElementVisitor$visitFile$3.run(UElementVisitor.kt:276)
at com.android.tools.lint.client.api.LintClient.runReadAction(LintClient.kt:1666)
at com.android.tools.lint.client.api.LintDriver$LintClientWrapper.runReadAction(LintDriver.kt:2223)
at com.android.tools.lint.client.api.UElementVisitor.visitFile(UElementVisitor.kt:273)
at com.android.tools.lint.client.api.LintDriver$visitUast$1.run(LintDriver.kt:1726)
at com.android.tools.lint.client.api.LintClient.runReadAction(LintClient.kt:1666)
at com.android.tools.lint.client.api.LintDriver$LintClientWrapper.runReadAction(LintDriver.kt:2223)
at com.android.tools.lint.client.api.LintDriver.visitUast(LintDriver.kt:1726)
at com.android.tools.lint.client.api.LintDriver.runFileDetectors(LintDriver.kt:1114)
at com.android.tools.lint.client.api.LintDriver.checkProject(LintDriver.kt:926)
at com.android.tools.lint.client.api.LintDriver.analyze(LintDriver.kt:426)
at com.android.tools.lint.LintCliClient.run(LintCliClient.kt:252)
at com.android.tools.lint.gradle.LintGradleClient.run(LintGradleClient.java:299)
at com.android.tools.lint.gradle.LintGradleExecution.runLint(LintGradleExecution.java:307)
at com.android.tools.lint.gradle.LintGradleExecution.lintSingleVariant(LintGradleExecution.java:398)
at com.android.tools.lint.gradle.LintGradleExecution.analyze(LintGradleExecution.java:96)
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:114)
at com.android.build.gradle.tasks.LintPerVariantTask.lint(LintPerVariantTask.java:64)
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:104)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:49)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:42)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:28)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:727)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:694)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.run(ExecuteActionsTaskExecuter.java:568)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:553)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:536)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access$300(ExecuteActionsTaskExecuter.java:109)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.executeWithPreviousOutputFiles(ExecuteActionsTaskExecuter.java:276)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.execute(ExecuteActionsTaskExecuter.java:265)
at org.gradle.internal.execution.steps.ExecuteStep.lambda$execute$1(ExecuteStep.java:33)
at java.util.Optional.orElseGet(Optional.java:267)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:33)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:26)
at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:67)
at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:36)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:49)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:34)
at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:43)
at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:73)
at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:54)
at org.gradle.internal.execution.steps.CatchExceptionStep.execute(CatchExceptionStep.java:34)
at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:44)
at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:54)
at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:38)
at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:49)
at org.gradle.internal.execution.steps.CacheStep.executeWithoutCache(CacheStep.java:159)
at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:72)
at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:43)
at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:44)
at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:33)
at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:38)
at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:24)
at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:92)
at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:85)
at java.util.Optional.map(Optional.java:215)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:55)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:39)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:76)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:37)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:36)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:26)
at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:94)
at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:49)
at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:79)
at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:53)
at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:74)
at org.gradle.internal.execution.steps.SkipEmptyWorkStep.lambda$execute$2(SkipEmptyWorkStep.java:78)
at java.util.Optional.orElseGet(Optional.java:267)
at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:78)
at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:34)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:39)
at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:40)
at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:28)
at org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:33)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:192)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:184)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:372)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:359)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:352)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:338)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
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:56)
at java.lang.Thread.run(Thread.java:748)
java.lang.NullPointerException
at org.jetbrains.kotlin.asJava.classes.KtLightClassForFacade.getLightClassData(KtLightClassForFacade.kt:182)
at org.jetbrains.kotlin.asJava.classes.KtLazyLightClass.getOwnMethods(KtLazyLightClass.kt:29)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.getAllMethods(KotlinClassInnerStuffCache.kt:150)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.access$getAllMethods(KotlinClassInnerStuffCache.kt:27)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:91)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:27)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$get$1$holder$1$1.compute(KotlinClassInnerStuffCache.kt:36)
at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54)
at com.intellij.util.CachedValueBase.lambda$getValueWithLock$1(CachedValueBase.java:240)
at com.intellij.openapi.util.RecursionManager$1.doPreventingRecursion(RecursionManager.java:113)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:71)
at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:241)
at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:43)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$get$1.computeValue(KotlinClassInnerStuffCache.kt:41)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache$get$1.getValue(KotlinClassInnerStuffCache.kt:65)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.get_getMethods(KotlinClassInnerStuffCache.kt)
at org.jetbrains.kotlin.asJava.classes.KotlinClassInnerStuffCache.getMethods(KotlinClassInnerStuffCache.kt:94)
at org.jetbrains.kotlin.asJava.classes.KtLightClassBase.getMethods(KtLightClassBase.kt:40)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.getMethodBySignature(kotlinInternalUastUtils.kt:206)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.getMethodBySignature(kotlinInternalUastUtils.kt:202)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveDeserialized(kotlinInternalUastUtils.kt:153)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveDeserialized$default(kotlinInternalUastUtils.kt:141)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveSource(kotlinInternalUastUtils.kt:106)
at org.jetbrains.uast.kotlin.KotlinUFunctionCallExpression.resolve(KotlinUFunctionCallExpression.kt:201)
at androidx.fragment.lint.UseRequireInsteadOfGet$createUastHandler$1.visitCallExpression(UseRequireInsteadOfGet.kt:143)
at com.android.tools.lint.client.api.UElementVisitor$DispatchPsiVisitor.visitCallExpression(UElementVisitor.kt:561)
at com.android.tools.lint.client.api.UElementVisitor$DelegatingPsiVisitor.visitCallExpression(UElementVisitor.kt:1057)
at org.jetbrains.uast.kotlin.KotlinUFunctionCallExpression.accept(KotlinUFunctionCallExpression.kt:205)
at org.jetbrains.uast.UQualifiedReferenceExpression$DefaultImpls.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.kotlin.KotlinUQualifiedReferenceExpression.accept(KotlinUQualifiedReferenceExpression.kt:27)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UExpressionList$DefaultImpls.accept(UExpressionList.kt:26)
at org.jetbrains.uast.kotlin.KotlinUExpressionList.accept(KotlinUExpressionList.kt:29)
at org.jetbrains.uast.USwitchClauseExpressionWithBody$DefaultImpls.accept(USwitchExpression.kt:101)
at org.jetbrains.uast.kotlin.KotlinUSwitchEntry.accept(KotlinUSwitchExpression.kt:52)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UExpressionList$DefaultImpls.accept(UExpressionList.kt:26)
at org.jetbrains.uast.kotlin.KotlinUExpressionList.accept(KotlinUExpressionList.kt:29)
at org.jetbrains.uast.USwitchExpression$DefaultImpls.accept(USwitchExpression.kt:42)
at org.jetbrains.uast.kotlin.KotlinUSwitchExpression.accept(KotlinUSwitchExpression.kt:27)
at org.jetbrains.uast.UQualifiedReferenceExpression$DefaultImpls.accept(UQualifiedReferenceExpression.kt:33)
at org.jetbrains.uast.kotlin.KotlinUQualifiedReferenceExpression.accept(KotlinUQualifiedReferenceExpression.kt:27)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UBlockExpression$DefaultImpls.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.kotlin.KotlinUBlockExpression.accept(KotlinUBlockExpression.kt:24)
at org.jetbrains.uast.ULambdaExpression$DefaultImpls.accept(ULambdaExpression.kt:33)
at org.jetbrains.uast.kotlin.KotlinULambdaExpression.accept(KotlinULambdaExpression.kt:27)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.kotlin.KotlinUFunctionCallExpression.accept(KotlinUFunctionCallExpression.kt:209)
at org.jetbrains.uast.UQualifiedReferenceExpression$DefaultImpls.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.kotlin.KotlinUQualifiedReferenceExpression.accept(KotlinUQualifiedReferenceExpression.kt:27)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UBlockExpression$DefaultImpls.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.kotlin.KotlinUBlockExpression.accept(KotlinUBlockExpression.kt:24)
at org.jetbrains.uast.UMethod$DefaultImpls.accept(UMethod.kt:41)
at org.jetbrains.uast.UMethodTypeSpecific$DefaultImpls.accept(UMethod.kt)
at org.jetbrains.uast.kotlin.declarations.KotlinUMethod.accept(KotlinUMethod.kt:32)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.kotlin.AbstractKotlinUClass.accept(KotlinUClass.kt:67)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:23)
at org.jetbrains.uast.UFile$DefaultImpls.accept(UFile.kt:83)
at org.jetbrains.uast.kotlin.KotlinUFile.accept(KotlinUFile.kt:30)
at com.android.tools.lint.client.api.UElementVisitor$visitFile$3.run(UElementVisitor.kt:276)
at com.android.tools.lint.client.api.LintClient.runReadAction(LintClient.kt:1666)
at com.android.tools.lint.client.api.LintDriver$LintClientWrapper.runReadAction(LintDriver.kt:2223)
at com.android.tools.lint.client.api.UElementVisitor.visitFile(UElementVisitor.kt:273)
at com.android.tools.lint.client.api.LintDriver$visitUast$1.run(LintDriver.kt:1726)
at com.android.tools.lint.client.api.LintClient.runReadAction(LintClient.kt:1666)
at com.android.tools.lint.client.api.LintDriver$LintClientWrapper.runReadAction(LintDriver.kt:2223)
at com.android.tools.lint.client.api.LintDriver.visitUast(LintDriver.kt:1726)
at com.android.tools.lint.client.api.LintDriver.runFileDetectors(LintDriver.kt:1114)
at com.android.tools.lint.client.api.LintDriver.checkProject(LintDriver.kt:926)
at com.android.tools.lint.client.api.LintDriver.analyze(LintDriver.kt:426)
at com.android.tools.lint.LintCliClient.run(LintCliClient.kt:252)
at com.android.tools.lint.gradle.LintGradleClient.run(LintGradleClient.java:299)
at com.android.tools.lint.gradle.LintGradleExecution.runLint(LintGradleExecution.java:307)
at com.android.tools.lint.gradle.LintGradleExecution.lintSingleVariant(LintGradleExecution.java:398)
at com.android.tools.lint.gradle.LintGradleExecution.analyze(LintGradleExecution.java:96)
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:114)
at com.android.build.gradle.tasks.LintPerVariantTask.lint(LintPerVariantTask.java:64)
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:104)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:49)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:42)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:28)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:727)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:694)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.run(ExecuteActionsTaskExecuter.java:568)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:553)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:536)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access$300(ExecuteActionsTaskExecuter.java:109)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.executeWithPreviousOutputFiles(ExecuteActionsTaskExecuter.java:276)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.execute(ExecuteActionsTaskExecuter.java:265)
at org.gradle.internal.execution.steps.ExecuteStep.lambda$execute$1(ExecuteStep.java:33)
at java.util.Optional.orElseGet(Optional.java:267)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:33)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:26)
at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:67)
at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:36)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:49)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:34)
at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:43)
at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:73)
at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:54)
at org.gradle.internal.execution.steps.CatchExceptionStep.execute(CatchExceptionStep.java:34)
at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:44)
at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:54)
at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:38)
at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:49)
at org.gradle.internal.execution.steps.CacheStep.executeWithoutCache(CacheStep.java:159)
at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:72)
at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:43)
at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:44)
at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:33)
at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:38)
at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:24)
at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:92)
at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:85)
at java.util.Optional.map(Optional.java:215)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:55)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:39)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:76)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:37)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:36)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:26)
at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:94)
at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:49)
at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:79)
at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:53)
at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:74)
at org.gradle.internal.execution.steps.SkipEmptyWorkStep.lambda$execute$2(SkipEmptyWorkStep.java:78)
at java.util.Optional.orElseGet(Optional.java:267)
at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:78)
at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:34)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:39)
at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:40)
at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:28)
at org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:33)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:192)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:184)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:372)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:359)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:352)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:338)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
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:56)
at java.lang.Thread.run(Thread.java:748)
Wrote HTML report to file:///opt/workspace/app/build/reports/lint-results-debug.html
Lint found 3 errors, 2 warnings (2013 errors, 45 warnings filtered by baseline lint-baseline.xml)
55 errors/warnings were listed in the baseline file (/opt/workspace/config/lint-baseline.xml) but not found in the project; perhaps they have been fixed?
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:lintDebug'.
> 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:
/opt/workspace/dynamic-views-ui/src/main/java/com/monzo/dynamicviews/renderers/AgreementRendererFragment.kt: Error: Unexpected failure during lint analysis of AgreementRendererFragment.kt (this is a bug in lint or one of the libraries it depends on)
Stack: NullPointerException:KtLightClassForFacade.getLightClassData(KtLightClassForFacade.kt:182)←KtLazyLightClass.getOwnMethods(KtLazyLightClass.kt:29)←KotlinClassInnerStuffCache.getAllMethods(KotlinClassInnerStuffCache.kt:150)←KotlinClassInnerStuffCache.access$getAllMethods(KotlinClassInnerStuffCache.kt:27)←KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:91)←KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:27)←KotlinClassInnerStuffCache$get$1$holder$1$1.compute(KotlinClassInnerStuffCache.kt:36)←PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54)
You can set environment variable LINT_PRINT_STACKTRACE=true to dump a full stacktrace to stdout. [LintError]
/opt/workspace/common-screens-ui/src/main/java/com/monzo/commonscreensui/fragment/BaseFragment.kt: Error: Unexpected failure during lint analysis of BaseFragment.kt (this is a bug in lint or one of the libraries it depends on)
Stack: NullPointerException:KtLightClassForFacade.getLightClassData(KtLightClassForFacade.kt:182)←KtLazyLightClass.getOwnMethods(KtLazyLightClass.kt:29)←KotlinClassInnerStuffCache.getAllMethods(KotlinClassInnerStuffCache.kt:150)←KotlinClassInnerStuffCache.access$getAllMethods(KotlinClassInnerStuffCache.kt:27)←KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:91)←KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:27)←KotlinClassInnerStuffCache$get$1$holder$1$1.compute(KotlinClassInnerStuffCache.kt:36)←PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54)
You can set environment variable LINT_PRINT_STACKTRACE=true to dump a full stacktrace to stdout. [LintError]
/opt/workspace/dynamic-views-ui/src/main/java/com/monzo/dynamicviews/renderers/TourRendererFragment.kt: Error: Unexpected failure during lint analysis of TourRendererFragment.kt (this is a bug in lint or one of the libraries it depends on)
Stack: NullPointerException:KtLightClassForFacade.getLightClassData(KtLightClassForFacade.kt:182)←KtLazyLightClass.getOwnMethods(KtLazyLightClass.kt:29)←KotlinClassInnerStuffCache.getAllMethods(KotlinClassInnerStuffCache.kt:150)←KotlinClassInnerStuffCache.access$getAllMethods(KotlinClassInnerStuffCache.kt:27)←KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:91)←KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:27)←KotlinClassInnerStuffCache$get$1$holder$1$1.compute(KotlinClassInnerStuffCache.kt:36)←PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54)
You can set environment variable LINT_PRINT_STACKTRACE=true to dump a full stacktrace to stdout. [LintError]
be...@gmail.com <be...@gmail.com> #3
be...@gmail.com <be...@gmail.com> #4
We're seeing plenty of instances of this issue. Looking at the expressions that cause this crash, I've seen a failure to enumerate the methods of a class made of top level functions and named with @file:JvmName
, when the class is referenced from a Java class. We've only seen this issue when running Lint on the application module and setting checkDependencies
to true.
th...@gmail.com <th...@gmail.com> #5
Reproducible on the
This might be related to
be...@gmail.com <be...@gmail.com> #6
Notes:
- In the tivi project, this NPE happens because the Kotlin compiler is trying to inspect a Kotlin source file which does not have a corresponding entry in the
BindingTrace
. - When
checkDependencies=true
, Lint reuses the same instance ofKotlinCoreEnvironment
to analyze each module/dependency in the project. My theory is thatKotlinCoreEnvironment
is holding on to some caches between each analysis, eventually leading to this NPE. - Discussing with JetBrains folks, Ilya Chernikov added evidence to this theory: "As far as I can tell, we do not assume that it is safe to share KotlinCoreEnvironment between modules. It can work for some cases, but it was not designed to be reused this way."
- And, if I modify
LintDriver
so that a newKotlinCoreEnvironment
is created for every module, then I no longer see this NPE on the tivi project.
in...@lessimp.com <in...@lessimp.com> #7
Notes:
- The NPEs are much easier to repro by using
-XX:SoftRefLRUPolicyMSPerMB=0
- I tracked down the problematic cache in the Kotlin compiler:
org.jetbrains.kotlin.asJava.classes.FacadeCache
- If I manually reset
FacadeCache
before analyzing each module with Lint, then the NPEs no longer occur.
- If I manually reset
- There is work in progress from Tor to change how Lint works when
checkDependencies=true
, which as a side effect will fix this bug.- However, this is a large project and is not likely to make it into AGP 4.2.
- So, I'm looking into a workaround in the meantime.
in...@lessimp.com <in...@lessimp.com> #8
Downgrading Lint only (from 27.0.1 -> 26.6.3), doesn't help, another errors, but same reason: NPE AGP version is 4.0.1
Log after downgrade:
[05:54:24]The first 3 errors (out of 21) were:
[05:54:24]/app/avito-libs/account-storage/src/main/java/com/avito/android/account/account_manager/AccountManagerStorage.kt: Error: Unexpected failure during lint analysis of AccountManagerStorage.kt (this is a bug in lint or one of the libraries it depends on)
[05:54:24]
[05:54:24]
[05:54:24]The crash seems to involve the detector com.android.tools.lint.checks.ApiDetector.
[05:54:24]You can try disabling it with something like this:
[05:54:24] android {
[05:54:24] lintOptions {
[05:54:24] disable "InlinedApi", "ObsoleteSdkInt", "Override", "NewApi", "UnusedAttribute"
[05:54:24] }
[05:54:24] }
[05:54:24]
[05:54:24]Stack: NullPointerException:KtLightClassForFacade.getLightClassData(KtLightClassForFacade.kt:182)←KtLazyLightClass.getOwnMethods(KtLazyLightClass.kt:29)←KotlinClassInnerStuffCache.getAllMethods(KotlinClassInnerStuffCache.kt:150)←KotlinClassInnerStuffCache.access$getAllMethods(KotlinClassInnerStuffCache.kt:27)←KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:91)←KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:27)←KotlinClassInnerStuffCache$get$1$holder$1$1.compute(KotlinClassInnerStuffCache.kt:36)←PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54)
[05:54:24]
[05:54:24]You can set environment variable LINT_PRINT_STACKTRACE=true to dump a full stacktrace to stdout. [LintError][05:54:24]/app/common/mvi/src/main/java/com/avito/android/mvi/v4/BaseMviEntityWithReducerQueue.kt: Error: Unexpected failure during lint analysis of BaseMviEntityWithReducerQueue.kt (this is a bug in lint or one of the libraries it depends on)
[05:54:24]
[05:54:24]
[05:54:24]The crash seems to involve the detector com.android.tools.lint.checks.ApiDetector.
[05:54:24]You can try disabling it with something like this:
[05:54:24] android {
[05:54:24] lintOptions {
[05:54:24] disable "InlinedApi", "ObsoleteSdkInt", "Override", "NewApi", "UnusedAttribute"
[05:54:24] }
[05:54:24] }
[05:54:24]
[05:54:24]Stack: NullPointerException:KtLightClassForFacade.getLightClassData(KtLightClassForFacade.kt:182)←KtLazyLightClass.getOwnMethods(KtLazyLightClass.kt:29)←KotlinClassInnerStuffCache.getAllMethods(KotlinClassInnerStuffCache.kt:150)←KotlinClassInnerStuffCache.access$getAllMethods(KotlinClassInnerStuffCache.kt:27)←KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:91)←KotlinClassInnerStuffCache$_getMethods$2.invoke(KotlinClassInnerStuffCache.kt:27)←KotlinClassInnerStuffCache$get$1$holder$1$1.compute(KotlinClassInnerStuffCache.kt:36)←PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54)
[05:54:24]
[05:54:24]You can set environment variable LINT_PRINT_STACKTRACE=true to dump a full stacktrace to stdout. [LintError][05:54:24]/app/avito-app/notification/src/main/java/com/avito/android/notification_center/list/item/ErrorSnippetItemBlueprint.kt: Error: Unexpected failure during lint analysis of ErrorSnippetItemBlueprint.kt (this is a bug in lint or one of the libraries it depends on)
[05:54:24]
[05:54:24]Message: package fragment is not found for module:<lintWithKotlin> is a module[ModuleDescriptorImpl@7636bcef] file:KtFile: BaseViewHolder.kt
[05:54:24]
[05:54:24]Attachments:
[05:54:24]file.kt
[05:54:24]package com.avito.konveyor.adapter
[05:54:24]
[05:54:24]import androidx.recyclerview.widget.RecyclerView
[05:54:24]import android.view.View
[05:54:24]import com.avito.konveyor.blueprint.ItemView
[05:54:24]
[05:54:24]abstract class BaseViewHolder(view: View) : RecyclerView.ViewHolder(view), ItemView
[05:54:24]Stack: AssertionError:DefaultLogger.error(DefaultLogger.java:53)←Logger.error(Logger.java:170)←PackageCodegenImpl.getOnlyPackageFragment(PackageCodegenImpl.java:155)←PackageCodegenImpl.<init>(PackageCodegenImpl.java:62)←DefaultCodegenFactory.createPackageCodegen(CodegenFactory.kt:72)←DefaultCodegenFactory.createPackageCodegen(CodegenFactory.kt:42)←ClassFileFactory.forPackage(ClassFileFactory.java:256)←LightClassDataProviderForClassOrObject$computeLightClassData$1$1.invoke(LightClassDataProvider.kt:49)
[05:54:24]
[05:54:24]You can set environment variable LINT_PRINT_STACKTRACE=true to dump a full stacktrace to stdout. [LintError]
in...@lessimp.com <in...@lessimp.com> #9
This is a workaround that worked for us.
Hopefully this issue is fixed and we can revert back to using `checkDependencies`
in...@lessimp.com <in...@lessimp.com> #10
wo...@gmail.com <wo...@gmail.com> #11
in...@lessimp.com <in...@lessimp.com> #12
bi...@gmail.com <bi...@gmail.com> #13
bi...@gmail.com <bi...@gmail.com> #14
Did these changes make 4.2 Beta 4 in the end? I see them in the Alpha 5 notes, but not Beta 4.
in...@lessimp.com <in...@lessimp.com> #15
in...@lessimp.com <in...@lessimp.com> #16
in...@lessimp.com <in...@lessimp.com> #17
in...@lessimp.com <in...@lessimp.com> #18
I ended up having to work on other things, but eventually got round to upgrading last week.
I ran lint 100 times with 4.2.0-beta06 and saw 0 flakes. 🎉 I don't remember exact numbers, but with 4.x/4.1.x it was flaking something like 20% of the time.
in...@lessimp.com <in...@lessimp.com> #19
Yay! Thanks for confirming.
I'll mark the issue fixed, since the workaround in
ha...@gmail.com <ha...@gmail.com> #20
We also didn't need LINT_DO_NOT_REUSE_UAST_ENV
, the default behaviour was enough to get rid of the flakes.
in...@lessimp.com <in...@lessimp.com> #21
in...@lessimp.com <in...@lessimp.com> #22
in...@lessimp.com <in...@lessimp.com> #23
2. running the validate_play_store_json_key json_key has confirmed that there may be a ruby/bundle related issue as before -
% fastlane run validate_play_store_json_key json_key:/Users/DevAccount/StudioProjects/lessimp/android/service_account_key.json
/Library/Ruby/Site/2.6.0/rubygems.rb:265:in `find_spec_for_exe': can't find gem fastlane (>= 0.a) with executable fastlane (Gem::GemNotFoundException)
from /Library/Ruby/Site/2.6.0/rubygems.rb:284:in `activate_bin_path'
from /usr/local/bin/fastlane:23:in `<main>'
% sudo bundle install
ad...@gmail.com <ad...@gmail.com> #24
lintOptions {
disable 'InvalidPackage'
disable "Instantiatable"
checkReleaseBuilds false
abortOnError false
}
[Deleted User] <[Deleted User]> #25
I had same problem after upgrading package that upgraded image_picker
.
First, I made new Flutter project, to see which version of Gradle it comes with. After that I updated my old project with those values:
- added
classpath 'com.android.tools.build:gradle:7.1.2'
inbuild.gradle
- upgraded Kotlin version to
ext.kotlin_version = '1.6.21'
inbuildscript
ofbuild.gradle
- updated distributionUrl in
gradle-wrapper.properties
so that it ends withgradle-7.2-all.zip
in...@lessimp.com <in...@lessimp.com> #26
in...@lessimp.com <in...@lessimp.com> #27
in...@lessimp.com <in...@lessimp.com> #28
1 The rubygem team suggested to install ruby-build and rbenv or asdf -
2. Ruby on Mac: You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory -
in...@lessimp.com <in...@lessimp.com> #29
in...@lessimp.com <in...@lessimp.com> #30
ken@Kens-MBP android % fastlane run validate_play_store_json_key json_key:/Users/ken/documents/projects/lessimp/android/service_account_key.json
[✔] 🚀
[17:49:52]: fastlane detected a Gemfile in the current directory
[17:49:52]: However, it seems like you didn't use `bundle exec`
[17:49:52]: To launch fastlane faster, please use
[17:49:52]:
[17:49:52]: $ bundle exec fastlane run validate_play_store_json_key json_key:/Users/ken/documents/projects/lessimp/android/service_account_key.json
[17:49:52]:
[17:49:52]: Get started using a Gemfile for fastlane
+------------------------+---------+-----------------+
| Used plugins |
+------------------------+---------+-----------------+
| Plugin | Version | Action |
+------------------------+---------+-----------------+
| fastlane-plugin-flutt | 1.1.15 | flutter_version |
| er_version | | |
+------------------------+---------+-----------------+
[17:49:54]: ------------------------------------------
[17:49:54]: --- Step: validate_play_store_json_key ---
[17:49:54]: ------------------------------------------
+----------+--------------------------------------+
| Summary for validate_play_store_json_key |
+----------+--------------------------------------+
| json_key | /Users/ken/documents/projects/lessi |
| | mp/android/service_account_key.json |
| timeout | 300 |
+----------+--------------------------------------+
[17:49:54]: Successfully established connection to Google Play Store.
GitHub Action:
in...@lessimp.com <in...@lessimp.com> #32
in...@lessimp.com <in...@lessimp.com> #33
in...@lessimp.com <in...@lessimp.com> #34
hu...@google.com <hu...@google.com> #35
Failed to transform '/home/runner/.gradle/caches/modules-2/files-2.1/org.bouncycastle/bcprov-jdk15on/1.68/46a080368d38b428d237a59458f9bc915222894d/bcprov-jdk15on-1.68.jar' using Jetifier. Reason: IllegalArgumentException, message: Unsupported class file major version 59. (Run with --stacktrace for more details.)
Please try to fix that error first.
After that, if you still run into a different error, please file a new bug with us: In Android Studio, click Help > Submit Feedback
.
ma...@gmail.com <ma...@gmail.com> #36
Upgrade image picker package
On Tue, Jun 14, 2022, 6:54 PM <buganizer-system@google.com> wrote:
Description
> Could not resolve all artifacts for configuration ':image_picker_android:debugUnitTestRuntimeClasspath'.
> Failed to transform bcprov-jdk15on-1.68.jar (org.bouncycastle:bcprov-jdk15on:1.68) to match attributes {artifactType=processed-jar, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
> Execution failed for JetifyTransform: /home/runner/.gradle/caches/modules-2/files-2.1/org.bouncycastle/bcprov-jdk15on/1.68/46a080368d38b428d237a59458f9bc915222894d/bcprov-jdk15on-1.68.jar.
> Failed to transform '/home/runner/.gradle/caches/modules-2/files-2.1/org.bouncycastle/bcprov-jdk15on/1.68/46a080368d38b428d237a59458f9bc915222894d/bcprov-jdk15on-1.68.jar' using Jetifier. Reason: IllegalArgumentException, message: Unsupported class file major version 59. (Run with --stacktrace for more details.)
Suggestions:
- Check out existing issues at
- If this issue has not been filed, please report it at