-
Notifications
You must be signed in to change notification settings - Fork 99
Open
Description
I tried to reproduce the two null pointer exceptions I found in the current plugin; One I was able to reproduce in a project I am actively involved:
To reproduce:
- clone https://github.com/eXist-db/exist.git
- add plugin to exist-parent/pom.xml
- run
mvn clean install -DskipTests(sorry a lot of CVE data is downloaded - it sometimes fails) - build fails with plugin NPE
java.lang.NullPointerException
at java.util.Objects.requireNonNull(Objects.java:203)
at com.sebastian_daschner.jaxrs_analyzer.model.methods.MethodIdentifier.<init>(MethodIdentifier.java:49)
at com.sebastian_daschner.jaxrs_analyzer.model.methods.MethodIdentifier.of(MethodIdentifier.java:180)
at com.sebastian_daschner.jaxrs_analyzer.model.methods.MethodIdentifier.ofNonStatic(MethodIdentifier.java:161)
at com.sebastian_daschner.jaxrs_analyzer.analysis.javadoc.JavaDocParserVisitor.calculateMethodIdentifier(JavaDocParserVisitor.java:192)
at com.sebastian_daschner.jaxrs_analyzer.analysis.javadoc.JavaDocParserVisitor.recordMethodComment(JavaDocParserVisitor.java:119)
at com.sebastian_daschner.jaxrs_analyzer.analysis.javadoc.JavaDocParserVisitor.lambda$visit$2(JavaDocParserVisitor.java:113)
at java.util.Optional.ifPresent(Optional.java:159)
at com.sebastian_daschner.jaxrs_analyzer.analysis.javadoc.JavaDocParserVisitor.visit(JavaDocParserVisitor.java:113)
at com.sebastian_daschner.jaxrs_analyzer.analysis.javadoc.JavaDocParserVisitor.visit(JavaDocParserVisitor.java:40)
at com.github.javaparser.ast.body.MethodDeclaration.accept(MethodDeclaration.java:118)
at com.github.javaparser.ast.visitor.VoidVisitorAdapter.lambda$visit$61(VoidVisitorAdapter.java:267)
at java.util.ArrayList.forEach(ArrayList.java:1257)
at com.github.javaparser.ast.NodeList.forEach(NodeList.java:255)
at com.github.javaparser.ast.visitor.VoidVisitorAdapter.visit(VoidVisitorAdapter.java:267)
at com.github.javaparser.ast.body.EnumDeclaration.accept(EnumDeclaration.java:91)
at com.github.javaparser.ast.visitor.VoidVisitorAdapter.lambda$visit$40(VoidVisitorAdapter.java:192)
at java.util.ArrayList.forEach(ArrayList.java:1257)
at com.github.javaparser.ast.NodeList.forEach(NodeList.java:255)
at com.github.javaparser.ast.visitor.VoidVisitorAdapter.visit(VoidVisitorAdapter.java:192)
at com.github.javaparser.ast.CompilationUnit.accept(CompilationUnit.java:126)
at com.sebastian_daschner.jaxrs_analyzer.analysis.javadoc.JavaDocAnalyzer.parseJavaDoc(JavaDocAnalyzer.java:64)
at com.sebastian_daschner.jaxrs_analyzer.analysis.javadoc.JavaDocAnalyzer.lambda$invokeParser$0(JavaDocAnalyzer.java:58)
at java.lang.Iterable.forEach(Iterable.java:75)
at com.sebastian_daschner.jaxrs_analyzer.analysis.javadoc.JavaDocAnalyzer.invokeParser(JavaDocAnalyzer.java:58)
at com.sebastian_daschner.jaxrs_analyzer.analysis.javadoc.JavaDocAnalyzer.invokeParser(JavaDocAnalyzer.java:38)
at com.sebastian_daschner.jaxrs_analyzer.analysis.javadoc.JavaDocAnalyzer.analyze(JavaDocAnalyzer.java:31)
at com.sebastian_daschner.jaxrs_analyzer.analysis.ProjectAnalyzer.analyze(ProjectAnalyzer.java:107)
at com.sebastian_daschner.jaxrs_analyzer.JAXRSAnalyzer.analyze(JAXRSAnalyzer.java:47)
at com.sebastian_daschner.jaxrs_analyzer.maven.JAXRSAnalyzerMojo.execute(JAXRSAnalyzerMojo.java:226)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:954)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:192)
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.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels