I'm getting an NPE when using the maven-pmd-plugin on a specific class, see
maven output below.

  maven: 2.0.3
  maven-pmd-plugin: 2.0-beta-2-SNAPSHOT (20060402.035249-4)

The above version of the PMD plugin uses PMD 3.6.

Using the Eclipse PMD plugin, it successfully analyzes the  class noted
below (WebdavTemplate) (with no warnings above PMDs level 3, BTW). It
appears the Eclipse PMD plugin also uses PMD 3.6.

I grabbed the source of the maven-pmd-plugin (version 2.1-SNAPSHOT) from
trunk, updated it to use PMD 3.7 (only minor mods required, will post to
JIRA soon), installed pmd-3.7.jar with an appropriate pom, built and
installed the plugin and ran the pmd:pmd goal again. No luck, same error as
below.

So, while I don't think that the maven-pmd-plugin is doing something wrong,
I'm thinking it might not be doing everything right.

Any pointers before I dig into the source of PMD to see exactly what's going
on?

Thanks,
Doug


[INFO] Generate "PMD Report" report.
[WARNING] Unable to locate Source XRef to link to - DISABLED
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Error during report generation

Embedded error: Failure executing PMD for:
/home/doug/workspace/compass/components/trunk/compass-content-dao-webdav/src/main/java/com/hdna/compass/content/webdav/WebdavTemplate.java
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: Error during
report generation
       at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559)
       at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:488)
       at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:458)
       at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:306)
       at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:273)
       at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:140)
       at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322)
       at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
       at org.apache.maven.cli.MavenCli.main(MavenCli.java:256)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
       at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
       at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
       at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
       at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: Error
during report generation
       at org.apache.maven.plugins.site.SiteMojo.execute(SiteMojo.java:389)
       at 
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:412)
       at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:534)
       ... 16 more
Caused by: org.apache.maven.reporting.MavenReportException: Failure
executing PMD for:
/home/doug/workspace/compass/components/trunk/compass-content-dao-webdav/src/main/java/com/hdna/compass/content/webdav/WebdavTemplate.java
       at 
org.apache.maven.plugin.pmd.PmdReport.executeReport(PmdReport.java:203)
       at 
org.apache.maven.reporting.AbstractMavenReport.generate(AbstractMavenReport.java:98)
       at 
org.apache.maven.plugins.site.SiteMojo.generateReportsPages(SiteMojo.java:802)
       at org.apache.maven.plugins.site.SiteMojo.execute(SiteMojo.java:301)
       ... 18 more
Caused by: java.lang.NullPointerException
       at 
net.sourceforge.pmd.rules.UselessOverridingMethod.visit(UselessOverridingMethod.java:47)
       at 
net.sourceforge.pmd.ast.ASTMethodDeclaration.jjtAccept(ASTMethodDeclaration.java:18)
       at 
net.sourceforge.pmd.ast.SimpleJavaNode.childrenAccept(SimpleJavaNode.java:44)
       at 
net.sourceforge.pmd.ast.JavaParserVisitorAdapter.visit(JavaParserVisitorAdapter.java:6)
       at 
net.sourceforge.pmd.ast.JavaParserVisitorAdapter.visit(JavaParserVisitorAdapter.java:47)
       at 
net.sourceforge.pmd.ast.ASTClassOrInterfaceBodyDeclaration.jjtAccept(ASTClassOrInterfaceBodyDeclaration.java:34)
       at 
net.sourceforge.pmd.ast.SimpleJavaNode.childrenAccept(SimpleJavaNode.java:44)
       at 
net.sourceforge.pmd.ast.JavaParserVisitorAdapter.visit(JavaParserVisitorAdapter.java:6)
       at 
net.sourceforge.pmd.ast.JavaParserVisitorAdapter.visit(JavaParserVisitorAdapter.java:43)
       at 
net.sourceforge.pmd.ast.ASTClassOrInterfaceBody.jjtAccept(ASTClassOrInterfaceBody.java:19)
       at 
net.sourceforge.pmd.ast.SimpleJavaNode.childrenAccept(SimpleJavaNode.java:44)
       at 
net.sourceforge.pmd.ast.JavaParserVisitorAdapter.visit(JavaParserVisitorAdapter.java:6)
       at 
net.sourceforge.pmd.ast.JavaParserVisitorAdapter.visit(JavaParserVisitorAdapter.java:19)
       at 
net.sourceforge.pmd.rules.UselessOverridingMethod.visit(UselessOverridingMethod.java:34)
       at 
net.sourceforge.pmd.ast.ASTClassOrInterfaceDeclaration.jjtAccept(ASTClassOrInterfaceDeclaration.java:18)
       at 
net.sourceforge.pmd.ast.SimpleJavaNode.childrenAccept(SimpleJavaNode.java:44)
       at 
net.sourceforge.pmd.ast.JavaParserVisitorAdapter.visit(JavaParserVisitorAdapter.java:6)
       at 
net.sourceforge.pmd.ast.JavaParserVisitorAdapter.visit(JavaParserVisitorAdapter.java:159)
       at 
net.sourceforge.pmd.ast.ASTTypeDeclaration.jjtAccept(ASTTypeDeclaration.java:33)
       at 
net.sourceforge.pmd.ast.SimpleJavaNode.childrenAccept(SimpleJavaNode.java:44)
       at 
net.sourceforge.pmd.ast.JavaParserVisitorAdapter.visit(JavaParserVisitorAdapter.java:6)
       at 
net.sourceforge.pmd.ast.JavaParserVisitorAdapter.visit(JavaParserVisitorAdapter.java:135)
       at net.sourceforge.pmd.AbstractRule.visitAll(AbstractRule.java:183)
       at net.sourceforge.pmd.AbstractRule.apply(AbstractRule.java:144)
       at net.sourceforge.pmd.RuleSet.apply(RuleSet.java:97)
       at net.sourceforge.pmd.RuleSets.apply(RuleSets.java:99)
       at net.sourceforge.pmd.PMD.processFile(PMD.java:104)
       at net.sourceforge.pmd.PMD.processFile(PMD.java:66)
       at net.sourceforge.pmd.PMD.processFile(PMD.java:152)
       at 
org.apache.maven.plugin.pmd.PmdReport.executeReport(PmdReport.java:187)
       ... 21 more
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 31 seconds
[INFO] Finished at: Thu Jun 01 07:14:47 MDT 2006
[INFO] Final Memory: 16M/31M
[INFO] ------------------------------------------------------------------------

Reply via email to