Sonar 7.9.2 java.lang.NullPointerException in org.sonar.java.se.SymbolicExecutionVisitor

  • SonarQube version: 7.9.2
  • SonarJava version: 6.0.1
  • error observed:
    This basically happens with a lot of our GWT source code since we upgraded to LTS 7.9.x. did not fail in LTS 6.7 we used previously.
20200117-041331  java.lang.NullPointerException: null
20200117-041331  	at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.implementsInterface(ReferenceBinding.java:1307)
20200117-041331  	at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isCompatibleWith0(ReferenceBinding.java:1492)
20200117-041331  	at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isCompatibleWith(ReferenceBinding.java:1414)
20200117-041331  	at org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isCompatibleWith(TypeBinding.java:652)
20200117-041331  	at org.eclipse.jdt.core.dom.TypeBinding.isSubTypeCompatible(TypeBinding.java:1239)
20200117-041331  	at org.sonar.java.model.JType.isSubtype(JType.java:65)
20200117-041331  	at org.sonar.java.model.JType.isSubtypeOf(JType.java:49)
20200117-041331  	at org.sonar.java.se.checks.UnclosedResourcesCheck.isCloseable(UnclosedResourcesCheck.java:230)
20200117-041331  	at org.sonar.java.se.checks.UnclosedResourcesCheck.needsClosing(UnclosedResourcesCheck.java:204)
20200117-041331  	at org.sonar.java.se.checks.UnclosedResourcesCheck.access$800(UnclosedResourcesCheck.java:68)
20200117-041331  	at org.sonar.java.se.checks.UnclosedResourcesCheck$PostStatementVisitor.methodOpeningResource(UnclosedResourcesCheck.java:487)
20200117-041331  	at org.sonar.java.se.checks.UnclosedResourcesCheck$PostStatementVisitor.visitMethodInvocation(UnclosedResourcesCheck.java:473)
20200117-041331  	at org.sonar.java.model.expression.MethodInvocationTreeImpl.accept(MethodInvocationTreeImpl.java:101)
20200117-041331  	at org.sonar.java.se.checks.UnclosedResourcesCheck.checkPostStatement(UnclosedResourcesCheck.java:150)
20200117-041331  	at org.sonar.java.se.CheckerDispatcher.executePost(CheckerDispatcher.java:106)
20200117-041331  	at org.sonar.java.se.CheckerDispatcher.addTransition(CheckerDispatcher.java:97)
20200117-041331  	at org.sonar.java.se.CheckerDispatcher.executePost(CheckerDispatcher.java:118)
20200117-041331  	at org.sonar.java.se.CheckerDispatcher.addTransition(CheckerDispatcher.java:97)
20200117-041331  	at org.sonar.java.se.checks.NullDereferenceCheck.checkPostStatement(NullDereferenceCheck.java:210)
20200117-041331  	at org.sonar.java.se.CheckerDispatcher.executePost(CheckerDispatcher.java:106)
20200117-041331  	at org.sonar.java.se.CheckerDispatcher.addTransition(CheckerDispatcher.java:97)
20200117-041331  	at org.sonar.java.se.CheckerDispatcher.executeCheckPostStatement(CheckerDispatcher.java:69)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.executeMethodInvocation(ExplodedGraphWalker.java:724)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.visit(ExplodedGraphWalker.java:559)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.execute(ExplodedGraphWalker.java:256)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.visitMethod(ExplodedGraphWalker.java:216)
20200117-041331  	at org.sonar.java.se.SymbolicExecutionVisitor.execute(SymbolicExecutionVisitor.java:73)
20200117-041331  	at org.sonar.java.se.xproc.BehaviorCache.get(BehaviorCache.java:148)
20200117-041331  	at org.sonar.java.se.xproc.BehaviorCache.get(BehaviorCache.java:131)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.executeMethodInvocation(ExplodedGraphWalker.java:688)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.visit(ExplodedGraphWalker.java:559)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.execute(ExplodedGraphWalker.java:256)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.visitMethod(ExplodedGraphWalker.java:216)
20200117-041331  	at org.sonar.java.se.SymbolicExecutionVisitor.execute(SymbolicExecutionVisitor.java:73)
20200117-041331  	at org.sonar.java.se.xproc.BehaviorCache.get(BehaviorCache.java:148)
20200117-041331  	at org.sonar.java.se.xproc.BehaviorCache.get(BehaviorCache.java:131)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.executeMethodInvocation(ExplodedGraphWalker.java:688)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.visit(ExplodedGraphWalker.java:559)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.execute(ExplodedGraphWalker.java:256)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.visitMethod(ExplodedGraphWalker.java:216)
20200117-041331  	at org.sonar.java.se.ExplodedGraphWalker.visitMethod(ExplodedGraphWalker.java:208)
20200117-041331  	at org.sonar.java.se.SymbolicExecutionVisitor.execute(SymbolicExecutionVisitor.java:77)
20200117-041331  	at org.sonar.java.se.SymbolicExecutionVisitor.visitNode(SymbolicExecutionVisitor.java:63)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:103)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visitChildren(SubscriptionVisitor.java:128)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:105)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visitChildren(SubscriptionVisitor.java:128)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:105)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visitChildren(SubscriptionVisitor.java:128)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:105)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visitChildren(SubscriptionVisitor.java:128)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:105)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visitChildren(SubscriptionVisitor.java:128)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:105)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visitChildren(SubscriptionVisitor.java:128)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:105)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visitChildren(SubscriptionVisitor.java:128)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:105)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visitChildren(SubscriptionVisitor.java:128)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.visit(SubscriptionVisitor.java:105)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.scanTree(SubscriptionVisitor.java:86)
20200117-041331  	at org.sonar.java.ast.visitors.SubscriptionVisitor.scanFile(SubscriptionVisitor.java:72)
20200117-041331  	at org.sonar.java.se.SymbolicExecutionVisitor.scanFile(SymbolicExecutionVisitor.java:53)
20200117-041331  	at org.sonar.java.model.VisitorsBridge.runScanner(VisitorsBridge.java:142)
20200117-041331  	at org.sonar.java.model.VisitorsBridge.visitFile(VisitorsBridge.java:133)
20200117-041331  	at org.sonar.java.ast.JavaAstScanner.simpleScan(JavaAstScanner.java:99)
20200117-041331  	at org.sonar.java.ast.JavaAstScanner.scan(JavaAstScanner.java:65)
20200117-041331  	at org.sonar.java.JavaSquid.scanSources(JavaSquid.java:111)
20200117-041331  	at org.sonar.java.JavaSquid.scan(JavaSquid.java:105)
20200117-041331  	at org.sonar.plugins.java.JavaSquidSensor.execute(JavaSquidSensor.java:88)
20200117-041331  	at org.sonar.scanner.sensor.AbstractSensorWrapper.analyse(AbstractSensorWrapper.java:48)
20200117-041331  	at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:85)
20200117-041331  	at org.sonar.scanner.sensor.ModuleSensorsExecutor.lambda$execute$1(ModuleSensorsExecutor.java:59)
20200117-041331  	at org.sonar.scanner.sensor.ModuleSensorsExecutor.withModuleStrategy(ModuleSensorsExecutor.java:77)
20200117-041331  	at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:59)
20200117-041331  	at org.sonar.scanner.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:82)
20200117-041331  	at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136)
20200117-041331  	at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122)
20200117-041331  	at org.sonar.scanner.scan.ProjectScanContainer.scan(ProjectScanContainer.java:400)
20200117-041331  	at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:395)
20200117-041331  	at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:392)
20200117-041331  	at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:392)
20200117-041331  	at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:392)
20200117-041331  	at org.sonar.scanner.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:358)
20200117-041331  	at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136)
20200117-041331  	at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122)
20200117-041331  	at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart(GlobalContainer.java:141)
20200117-041331  	at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136)
20200117-041331  	at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122)
20200117-041331  	at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:73)
20200117-041331  	at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:67)
20200117-041331  	at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46)
20200117-041331  	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
20200117-041331  	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
20200117-041331  	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
20200117-041331  	at java.lang.reflect.Method.invoke(Method.java:498)
20200117-041331  	at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)
20200117-041331  	at com.sun.proxy.$Proxy1318.execute(Unknown Source)
20200117-041331  	at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:189)
20200117-041331  	at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:138)
20200117-041331  	at org.sonarqube.gradle.SonarQubeTask.run(SonarQubeTask.java:100)
20200117-041331  	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
20200117-041331  	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
20200117-041331  	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
20200117-041331  	at java.lang.reflect.Method.invoke(Method.java:498)
20200117-041331  	at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:103)
20200117-041331  	at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:49)
20200117-041331  	at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:42)
20200117-041331  	at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:28)
20200117-041331  	at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:717)
20200117-041331  	at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:684)
20200117-041331  	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$5.run(ExecuteActionsTaskExecuter.java:476)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
20200117-041331  	at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
20200117-041331  	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:461)
20200117-041331  	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:444)
20200117-041331  	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access$200(ExecuteActionsTaskExecuter.java:93)
20200117-041331  	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.execute(ExecuteActionsTaskExecuter.java:237)
20200117-041331  	at org.gradle.internal.execution.steps.ExecuteStep.lambda$execute$1(ExecuteStep.java:33)
20200117-041331  	at java.util.Optional.orElseGet(Optional.java:267)
20200117-041331  	at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:33)
20200117-041331  	at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:26)
20200117-041331  	at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:58)
20200117-041331  	at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:35)
20200117-041331  	at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:48)
20200117-041331  	at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:33)
20200117-041331  	at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:39)
20200117-041331  	at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:73)
20200117-041331  	at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:54)
20200117-041331  	at org.gradle.internal.execution.steps.CatchExceptionStep.execute(CatchExceptionStep.java:35)
20200117-041331  	at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:51)
20200117-041331  	at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:45)
20200117-041331  	at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:31)
20200117-041331  	at org.gradle.internal.execution.steps.CacheStep.executeWithoutCache(CacheStep.java:208)
20200117-041331  	at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:70)
20200117-041331  	at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:45)
20200117-041331  	at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:49)
20200117-041331  	at org.gradle.internal.execution.steps.StoreSnapshotsStep.execute(StoreSnapshotsStep.java:43)
20200117-041331  	at org.gradle.internal.execution.steps.StoreSnapshotsStep.execute(StoreSnapshotsStep.java:32)
20200117-041331  	at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:38)
20200117-041331  	at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:24)
20200117-041331  	at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:96)
20200117-041331  	at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:89)
20200117-041331  	at java.util.Optional.map(Optional.java:215)
20200117-041331  	at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:54)
20200117-041331  	at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:38)
20200117-041331  	at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:76)
20200117-041331  	at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:37)
20200117-041331  	at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:36)
20200117-041331  	at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:26)
20200117-041331  	at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:90)
20200117-041331  	at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:48)
20200117-041331  	at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:69)
20200117-041331  	at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:47)
20200117-041331  	at org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:33)
20200117-041331  	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:140)
20200117-041331  	at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:62)
20200117-041331  	at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:108)
20200117-041331  	at org.gradle.api.internal.tasks.execution.ResolveBeforeExecutionOutputsTaskExecuter.execute(ResolveBeforeExecutionOutputsTaskExecuter.java:67)
20200117-041331  	at org.gradle.api.internal.tasks.execution.ResolveAfterPreviousExecutionStateTaskExecuter.execute(ResolveAfterPreviousExecutionStateTaskExecuter.java:46)
20200117-041331  	at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:94)
20200117-041331  	at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
20200117-041331  	at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:95)
20200117-041331  	at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
20200117-041331  	at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
20200117-041331  	at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
20200117-041331  	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
20200117-041331  	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
20200117-041331  	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
20200117-041331  	at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
20200117-041331  	at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
20200117-041331  	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
20200117-041331  	at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:43)
20200117-041331  	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:355)
20200117-041331  	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:343)
20200117-041331  	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:336)
20200117-041331  	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:322)
20200117-041331  	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker$1.execute(DefaultPlanExecutor.java:134)
20200117-041331  	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker$1.execute(DefaultPlanExecutor.java:129)
20200117-041331  	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:202)
20200117-041331  	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:193)
20200117-041331  	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:129)
20200117-041331  	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
20200117-041331  	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
20200117-041331  	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
20200117-041331  	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
20200117-041331  	at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
20200117-041331  	at java.lang.Thread.run(Thread.java:748)

Unfortunately, I cannot easily share the code that causes the problem, but it is basically of this structure:

package sample;

import com.google.inject.Inject;
import com.google.web.bindery.autobean.shared.AutoBean;
import com.google.web.bindery.autobean.shared.AutoBeanFactory;
import com.google.web.bindery.event.shared.EventBus;
import com.gwtplatform.mvp.client.HasUiHandlers;
import com.gwtplatform.mvp.client.PresenterWidget;
import com.gwtplatform.mvp.client.UiHandlers;
import com.gwtplatform.mvp.client.View;

public class SonarFailureSample extends PresenterWidget<SonarFailureSample.MyView> implements
		SonarFailureSampleUiHandlers {


	public interface MyAutoBeanFactory extends AutoBeanFactory {
		AutoBean<String> mybean();
	}

	public interface MyView extends View, HasUiHandlers<SonarFailureSampleUiHandlers> {

		void setName(String name);

		void setDescription(String description);
	}

	@Inject
	public SonarFailureSample(final EventBus eventBus, final MyView view) {
		super(eventBus, view);
		getView().setUiHandlers(this);
	}


	@Override
	protected void onHide() {
		super.onHide();
	}

	@Override
	public void onNameChanged(String value) {
	}

	@Override
	public void onNameReset() {
	}

	@Override
	public void onDescriptionChanged(String value) {
	}
}

interface SonarFailureSampleUiHandlers extends UiHandlers {

	void onNameChanged(String value);

	void onNameReset();

	void onDescriptionChanged(String value);
}

Hello,

Unfortunately I’m not able to reproduce the issue while playing with example your are providing. Could you maybe send privately (via private message?) one of the file which is making your analysis fail?

Can you also check that you are providing all the bytecode related to the libraries of your project? Note that if you are using maven/gradle to perform the analysis, this should be OK already.

Regards,
Michael

Yes, we are using gradle and we did not change anything apart from upgrading sonar from 6.7 to 7.9 (obviously we had to adapt some settings regarding jacoco, but the way how the classpath is set up stayed the same).

UPDATE: The build is working now, after I excluded 12 files (one after the other).
The main problem with this was actually, that sonar did not show all the failures at once, but only one after the other. So I had to do an exclusion, run the build (3 hours), add the next exclusion and so on.
So apart from the actual problem, it would be great if a scanning error in an analyzer would not stop the whole build.

Later today I will send the list of those files I had to exclude.

Hello,

it would be great if a scanning error in an analyzer would not stop the whole build.

I completely agree, and in fact, we should strive for this behavior for all analyzer.
For SonarJava, we recently worked on this, the fix will be included in (soon to be released) 6.0.2, you should not face this issue in the future.

That being said, it does not solve your initial problem, but in order to go further, we really could use the failing files you are talking about (or a complete reproducer). It will also enable us to confirm that the analysis is not failing anymore in your case aswell.

Best,
Quentin