MFactors3 というテスト プロジェクトで使用する maven 親 pom に maven pmd プラグインを構成しました。Eclipse で m2Eclipse を使用してこの小さなプロジェクトをビルドすると、PMD でかなりの数の違反が報告されます。コマンド ラインから同じプロジェクトをビルドすると、PMD はターゲット/サイト フォルダーに空の違反ファイルを生成します。
親の pom には、推奨される maven pmd ドキュメントから直接抜粋したセクションがあります。プラグインが呼び出され、正常に実行されるため、pom マテリアルは表示されません。
以下は、コマンド ラインから「mvn pmd:pmd -X」を実行しただけの出力です。構成データは正確に見えます。しかし、違反は検出されません。なんで?
[DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-pmd-plugin:2.7.1:pmd' with basic configurator -->
[DEBUG] (f) aggregate = false
[DEBUG] (f) compileSourceRoots = [/Users/Robert/Documents/workspace-sts-3.1.0-psgv/MFactors30 /src/main/java]
[DEBUG] (f) excludeRoots = [/Users/Robert/Documents/workspace-sts-3.1.0-psgv/MFactors30/target/generated-sources/stubs]
[DEBUG] (f) excludes = [**/*Bean.java, **/generated/*.java]
[DEBUG] (f) format = xml
[DEBUG] (f) includeTests = false
[DEBUG] (f) linkXRef = true
[DEBUG] (f) minimumPriority = 5
[DEBUG] (f) outputDirectory = /Users/Robert/Documents/workspace-sts-3.1.0-psgv/MFactors30/target/site
[DEBUG] (f) project = MavenProject: edu.psu.sweng497a:MFactors30:0.0.1-SNAPSHOT @ /Users/Robert/Documents/workspace-sts-3.1.0-psgv/MFactors30/pom.xml
[DEBUG] (f) reactorProjects = [MavenProject: edu.psu.sweng497a:MFactors30:0.0.1-SNAPSHOT @ /Users/Robert/Documents/workspace-sts-3.1.0-psgv/MFactors30/pom.xml]
[DEBUG] (f) skip = false
[DEBUG] (f) sourceEncoding = utf-8
[DEBUG] (f) targetDirectory = /Users/Robert/Documents/workspace-sts-3.1.0-psgv/MFactors30/target
[DEBUG] (f) targetJdk = 1.6
[DEBUG] (f) testSourceRoots = [/Users/Robert/Documents/workspace-sts-3.1.0-psgv/MFactors30/src/test/java]
[DEBUG] (f) xrefLocation = /Users/Robert/Documents/workspace-sts-3.1.0-psgv/MFactors30/target/site/xref
[DEBUG] (f) xrefTestLocation = /Users/Robert/Documents/workspace-sts-3.1.0-psgv/MFactors30/target/site/xref-test
[DEBUG] -- end configuration --
[DEBUG] Preparing ruleset: rulesets/basic.xml
[DEBUG] Before: rulesets/basic.xml After: basic.xml
[DEBUG] The resource 'rulesets/basic.xml' was not found with resourceLoader org.codehaus.plexus.resource.loader.FileResourceLoader.
[DEBUG] The resource 'rulesets/basic.xml' was not found with resourceLoader org.codehaus.plexus.resource.loader.JarResourceLoader.
[DEBUG] The resource 'rulesets/basic.xml' was found as jar:file:/Users/Robert/.m2/repository/pmd/pmd/4.3/pmd-4.3.jar!/rulesets/basic.xml.
[DEBUG] Preparing ruleset: rulesets/unusedcode.xml
[DEBUG] Before: rulesets/unusedcode.xml After: unusedcode.xml
[DEBUG] The resource 'rulesets/unusedcode.xml' was not found with resourceLoader org.codehaus.plexus.resource.loader.FileResourceLoader.
[DEBUG] The resource 'rulesets/unusedcode.xml' was not found with resourceLoader org.codehaus.plexus.resource.loader.JarResourceLoader.
[DEBUG] The resource 'rulesets/unusedcode.xml' was found as jar:file:/Users/Robert/.m2/repository/pmd/pmd/4.3/pmd-4.3.jar!/rulesets/unusedcode.xml.
[DEBUG] Preparing ruleset: rulesets/imports.xml
[DEBUG] Before: rulesets/imports.xml After: imports.xml
[DEBUG] The resource 'rulesets/imports.xml' was not found with resourceLoader org.codehaus.plexus.resource.loader.FileResourceLoader.
[DEBUG] The resource 'rulesets/imports.xml' was not found with resourceLoader org.codehaus.plexus.resource.loader.JarResourceLoader.
[DEBUG] The resource 'rulesets/imports.xml' was found as jar:file:/Users/Robert/.m2/repository/pmd/pmd/4.3/pmd-4.3.jar!/rulesets/imports.xml.
[WARNING] Unable to locate Source XRef to link to - DISABLED
[DEBUG] Exclusions: **/*~,**/#*#,**/.#*,**/%*%,**/._*,**/CVS,**/CVS/**,**/.cvsignore,**/RCS,**/RCS/**,**/SCCS,**/SCCS/**,**/vssver.scc,**/project.pj,**/.svn,**/.svn/**,**/.arch-ids,**/.arch-ids/**,**/.bzr,**/.bzr/**,**/.MySCMServerInfo,**/.DS_Store,**/.metadata,**/.metadata/**,**/.hg,**/.hg/**,**/.git,**/.git/**,**/BitKeeper,**/BitKeeper/**,**/ChangeSet,**/ChangeSet/**,**/_darcs,**/_darcs/**,**/.darcsrepo,**/.darcsrepo/**,**/-darcs-backup*,**/.darcs-temp-mail,**/*Bean.java,**/generated/*.java
[DEBUG] Inclusions: **/*.java
[DEBUG] Velocimacro : added #link( href name target img position alt border width height ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[DEBUG] Velocimacro : added #image( img alt border width height ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[DEBUG] Velocimacro : added #banner( banner id ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[DEBUG] Velocimacro : added #links( links ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[DEBUG] Velocimacro : added #breadcrumbs( breadcrumbs ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[DEBUG] Velocimacro : added #displayTree( display item ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[DEBUG] Velocimacro : added #menuItem( item ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[DEBUG] Velocimacro : added #mainMenu( menus ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[DEBUG] Velocimacro : added #copyright( ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[DEBUG] Velocimacro : added #publishDate( position publishDate version ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[DEBUG] Velocimacro : added #poweredByLogo( poweredBy ) : source = org/apache/maven/doxia/siterenderer/resources/default-site.vm
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS