-
Notifications
You must be signed in to change notification settings - Fork 742
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
An unhandled exception was thrown by the Error Prone static analysis plugin #1130
Comments
The issue can be replicated by applying the patch attached here: https://issues.apache.org/jira/browse/WSS-633 to this maven based project: |
It looks like a156bfb introduced a runtime dependency on the AutoValue annotation. Error Prone should be updated to depend on In the mean time, you should be able to workaround this by adding <path>
<groupId>com.google.auto.value</groupId>
<artifactId>auto-value-annotations</artifactId>
<version>1.6.2</version>
</path> |
Thanks for the fast analysis @tbroyer ! I can confirm that with adding the auto-value-annotations dependency everything works fine. Will the fix for this issue be part of the 2.3.2 release? |
RELNOTES: Track AutoValue accessors in Nullness analysis access paths ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=206945111
Thanks for investigating, the runtime dependency is easy to avoid so I'm going to remove it instead. |
See google#1130 RELNOTES: N/A ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=215268518
See #1130 RELNOTES: N/A ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=215268518
This will be fixed in the next release by 413660b. |
Hi,
I'm seeing this error below when upgrading Errorprone in my project. I'm using 2.3.2-SNAPSHOT to get it working with JDK11, but I see the error with JDK8 as well.
[ERROR] error-prone version: 2.3.2-SNAPSHOT
[ERROR] BugPattern: ReferenceEquality
[ERROR] Stack Trace:
[ERROR] com.google.common.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: com/google/auto/value/AutoValue
[ERROR] at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2216)
[ERROR] at com.google.common.cache.LocalCache.get(LocalCache.java:4147)
[ERROR] at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4151)
[ERROR] at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5140)
[ERROR] at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5146)
[ERROR] at com.google.errorprone.dataflow.DataFlow.methodDataflow(DataFlow.java:173)
[ERROR] at com.google.errorprone.dataflow.DataFlow.expressionDataflow(DataFlow.java:226)
[ERROR] at com.google.errorprone.dataflow.nullnesspropagation.NullnessAnalysis.getNullness(NullnessAnalysis.java:59)
[ERROR] at com.google.errorprone.bugpatterns.AbstractReferenceEquality.getNullness(AbstractReferenceEquality.java:186)
[ERROR] at com.google.errorprone.bugpatterns.AbstractReferenceEquality.addFixes(AbstractReferenceEquality.java:107)
[ERROR] at com.google.errorprone.bugpatterns.AbstractReferenceEquality.matchBinary(AbstractReferenceEquality.java:82)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitBinary(ErrorProneScanner.java:507)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitBinary(ErrorProneScanner.java:146)
[ERROR] at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCBinary.accept(JCTree.java:1999)
[ERROR] at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:83)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.visitParenthesized(TreeScanner.java:572)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitParenthesized(ErrorProneScanner.java:989)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitParenthesized(ErrorProneScanner.java:146)
[ERROR] at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCParens.accept(JCTree.java:1855)
[ERROR] at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:83)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.visitIf(TreeScanner.java:418)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitIf(ErrorProneScanner.java:756)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitIf(ErrorProneScanner.java:146)
[ERROR] at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCIf.accept(JCTree.java:1433)
[ERROR] at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:83)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:90)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:105)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:248)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:528)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:146)
[ERROR] at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1032)
[ERROR] at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:83)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:90)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.visitForLoop(TreeScanner.java:291)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitForLoop(ErrorProneScanner.java:726)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitForLoop(ErrorProneScanner.java:146)
[ERROR] at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCForLoop.accept(JCTree.java:1138)
[ERROR] at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:83)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:90)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:105)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:248)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:528)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:146)
[ERROR] at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1032)
[ERROR] at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:83)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:90)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:105)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:248)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:528)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:146)
[ERROR] at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1032)
[ERROR] at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:83)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:90)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.visitMethod(TreeScanner.java:206)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:896)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:146)
[ERROR] at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:898)
[ERROR] at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:83)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:90)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:105)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:113)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:187)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:588)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:146)
[ERROR] at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:808)
[ERROR] at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:82)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:83)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:105)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:113)
[ERROR] at jdk.compiler/com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:144)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:603)
[ERROR] at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:146)
[ERROR] at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:591)
[ERROR] at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:56)
[ERROR] at com.google.errorprone.scanner.Scanner.scan(Scanner.java:65)
[ERROR] at com.google.errorprone.scanner.ErrorProneScannerTransformer.apply(ErrorProneScannerTransformer.java:43)
[ERROR] at com.google.errorprone.ErrorProneAnalyzer.finished(ErrorProneAnalyzer.java:151)
[ERROR] at jdk.compiler/com.sun.tools.javac.api.MultiTaskListener.finished(MultiTaskListener.java:132)
[ERROR] at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1418)
[ERROR] at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1365)
[ERROR] at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:960)
[ERROR] at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.lambda$doCall$0(JavacTaskImpl.java:104)
[ERROR] at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.handleExceptions(JavacTaskImpl.java:147)
[ERROR] at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:100)
[ERROR] at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:94)
[ERROR] at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess(JavaxToolsCompiler.java:126)
[ERROR] at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile(JavacCompiler.java:174)
[ERROR] at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:952)
[ERROR] at org.apache.maven.plugin.compiler.TestCompilerMojo.execute(TestCompilerMojo.java:172)
[ERROR] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
[ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
[ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
[ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
[ERROR] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
[ERROR] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
[ERROR] at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
[ERROR] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
[ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
[ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
[ERROR] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
[ERROR] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:954)
[ERROR] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
[ERROR] at org.apache.maven.cli.MavenCli.main(MavenCli.java:192)
[ERROR] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[ERROR] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[ERROR] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
[ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
[ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
[ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
[ERROR] Caused by: java.lang.NoClassDefFoundError: com/google/auto/value/AutoValue
[ERROR] at com.google.errorprone.dataflow.AccessPath.isAutoValueAccessor(AccessPath.java:104)
[ERROR] at com.google.errorprone.dataflow.nullnesspropagation.NullnessPropagationTransfer.returnValueNullness(NullnessPropagationTransfer.java:787)
[ERROR] at com.google.errorprone.dataflow.nullnesspropagation.NullnessPropagationTransfer.visitMethodInvocation(NullnessPropagationTransfer.java:598)
[ERROR] at com.google.errorprone.dataflow.nullnesspropagation.AbstractNullnessPropagationTransfer.visitMethodInvocation(AbstractNullnessPropagationTransfer.java:303)
[ERROR] at com.google.errorprone.dataflow.nullnesspropagation.AbstractNullnessPropagationTransfer.visitMethodInvocation(AbstractNullnessPropagationTransfer.java:128)
[ERROR] at org.checkerframework.dataflow.cfg.node.MethodInvocationNode.accept(MethodInvocationNode.java:76)
[ERROR] at org.checkerframework.dataflow.analysis.Analysis.callTransferFunction(Analysis.java:408)
[ERROR] at org.checkerframework.dataflow.analysis.Analysis.performAnalysisBlock(Analysis.java:234)
[ERROR] at org.checkerframework.dataflow.analysis.Analysis.performAnalysis(Analysis.java:187)
[ERROR] at com.google.errorprone.dataflow.DataFlow$1.load(DataFlow.java:85)
[ERROR] at com.google.errorprone.dataflow.DataFlow$1.load(DataFlow.java:76)
[ERROR] at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3708)
[ERROR] at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2416)
[ERROR] at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2299)
[ERROR] at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2212)
[ERROR] ... 127 more
[ERROR] Caused by: java.lang.ClassNotFoundException: com.google.auto.value.AutoValue
[ERROR] at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
[ERROR] at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
[ERROR] at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
[ERROR] ... 142 more
The text was updated successfully, but these errors were encountered: