coucou à tous,
c'est toujours moi et mon pb avec pmd.
j'ai installé sur mon repository local la dépendance pmd version 3.8.
Sur le repository officiel (http://repo1.maven.org/maven2) de maven2, la dernière version est la 3.7.
J'ai fixe la balise version dans mon pom à 3.8.
j'ai compiler mon jar contenant mes regles pmd avec la version 3.8.
Lorsque je lance la commande mnv pmd:check -X (sur le projet test sur lequel je souhaite exécuter mes regles pmd), j'ai le resultat suivant :
+ Error stacktraces are turned on.
Maven version: 2.0.4
[DEBUG] Building Maven user-level plugin registry from: 'C:\Documents and Settings\laurent\.m2\plugin-registry.xml'
[DEBUG] Building Maven global-level plugin registry from: 'C:\Program Files\Apache Software Foundation\maven-2.0.4\bin\..\conf\plugin-registry.xml'
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'pmd'.
[DEBUG] maven-pmd-plugin: resolved to version 2.1 from repository central
[DEBUG] Retrieving parent-POM: org.apache.maven.plugins:maven-plugins::1 for project: null:maven-pmd-plugin:maven-plugin:2.1 from the repository.
[DEBUG] Retrieving parent-POM: org.apache.maven:maven-parent::1 for project: org.apache.maven.plugins:maven-plugins:pom:1 from the repository.
[DEBUG] Retrieving parent-POM: org.apache:apache::1 for project: org.apache.maven:maven-parent:pom:1 from the repository.
[DEBUG] xxxxx.application.test:app-test:jar:1.0 (selected for null)
[DEBUG] CodingCustomerRulesPrj:CodingCustomerRulesPrj:jar:0.0.1:runtime (selected for runtime)
[DEBUG] Trying repository central
Downloading: http://repo1.maven.org/maven2/pmd/pmd/3.8/pmd-3.8.pom
[WARNING] Unable to get resource from repository central (http://repo1.maven.org/maven2)
[DEBUG] Artifact not found - using stub model: Unable to download the artifact from any repository
pmd:pmd:pom:3.8
from the specified remote repositories:
central (http://repo1.maven.org/maven2)
[DEBUG] Using defaults for missing POM pmd:pmd:pom:3.8:runtime
[DEBUG] pmd:pmd:jar:3.8:runtime (selected for runtime)
[INFO] ----------------------------------------------------------------------------
[INFO] Building Unnamed - xxxxx.application.test:app-test:jar:1.0
[INFO] task-segment: [pmd:check]
[INFO] ----------------------------------------------------------------------------
[INFO] Preparing pmd:check
[DEBUG] org.apache.maven.plugins:maven-pmd-plugin:maven-plugin:2.1:runtime (selected for runtime)
[DEBUG] pmd:pmd:jar:3.7:runtime (selected for runtime)
[DEBUG] oro:oro:jar:2.0.8:runtime (selected for runtime)
[DEBUG] jaxen:jaxen:jar:1.1-beta-7:runtime (selected for runtime)
[DEBUG] xercesmlParserAPIs:jar:2.6.2:runtime (selected for runtime)
[DEBUG] xercesercesImpl:jar:2.6.2:runtime (selected for runtime)
[DEBUG] org.codehaus.plexus:plexus-utils:jar:1.0.4:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven:maven-plugin-api:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-plugin-api:jar:2.0:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven.shared:maven-shared-components::1 for project: null:maven-plugin-testing-harness:jar:1.0-beta-1 from the repository.
[DEBUG] Retrieving parent-POM: org.apache.maven:maven-parent::1 for project: org.apache.maven.shared:maven-shared-components:pom:1 from the repository.
[DEBUG] Retrieving parent-POM: org.apache:apache::1 for project: org.apache.maven:maven-parent:pom:1 from the repository.
[DEBUG] org.apache.maven.shared:maven-plugin-testing-harness:jar:1.0-beta-1:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.codehaus.plexus:plexus::1.0.4 for project: null:plexus-utils:jar:1.1 from the repository.
[DEBUG] org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: null:maven-project:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-project:jar:2.0:runtime (selected for runtime)
[DEBUG] org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-8:runtime (selected for runtime)
[DEBUG] classworlds:classworlds:jar:1.1-alpha-2:runtime (selected for runtime)
[DEBUG] junit:junit:jar:3.8.1:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven:maven-artifact:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-artifact:jar:2.0:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven:maven-model:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-model:jar:2.0:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven:maven-artifact-manager:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-artifact-manager:jar:2.0:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven:maven-repository-metadata:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-repository-metadata:jar:2.0:runtime (selected for runtime)
[DEBUG] org.apache.maven.wagon:wagon-provider-api:jar:1.0-alpha-5:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: null:maven-profile:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-profile:jar:2.0:runtime (selected for runtime)
[DEBUG] junit:junit:jar:3.8.1:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven:maven-core:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-core:jar:2.0:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: null:maven-plugin-parameter-documenter:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-plugin-parameter-documenter:jar:2.0:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: null:maven-error-diagnostics:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-error-diagnostics:jar:2.0:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven:maven-monitor:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-monitor:jar:2.0:runtime (selected for runtime)
[DEBUG] org.apache.maven:maven-repository-metadata:jar:2.0:runtime (selected for runtime)
[DEBUG] org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: null:maven-settings:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-settings:jar:2.0:runtime (selected for runtime)
[DEBUG] org.apache.maven.wagon:wagon-http-lightweight:jar:1.0-alpha-5:runtime (selected for runtime)
[DEBUG] org.apache.maven.wagon:wagon-file:jar:1.0-alpha-5:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven:maven-plugin-descriptor:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-plugin-descriptor:jar:2.0:runtime (selected for runtime)
[DEBUG] org.apache.maven.wagon:wagon-provider-api:jar:1.0-alpha-5:runtime (selected for runtime)
[DEBUG] commons-cli:commons-cli:jar:1.0:runtime (selected for runtime)
[DEBUG] org.apache.maven.wagon:wagon-ssh:jar:1.0-alpha-5:runtime (selected for runtime)
[DEBUG] com.jcraft:jsch:jar:0.1.23:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven.reporting:maven-reporting::2.0 for project: null:maven-reporting-api:jar:2.0 from the repository.
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven.reporting:maven-reporting:pom:2.0 from the repository.
[DEBUG] org.apache.maven.reporting:maven-reporting-api:jar:2.0:runtime (selected for runtime)
[DEBUG] doxia:doxia-sink-api:jar:1.0-alpha-4:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven:maven-plugin-registry:jar:2.0 from the repository.
[DEBUG] org.apache.maven:maven-plugin-registry:jar:2.0:runtime (selected for runtime)
[DEBUG] Retrieving parent-POM: org.apache.maven.reporting:maven-reporting::2.0 for project: null:maven-reporting-impl:jar:2.0 from the repository.
[DEBUG] Retrieving parent-POM: org.apache.maven:maven::2.0 for project: org.apache.maven.reporting:maven-reporting:pom:2.0 from the repository.
[DEBUG] org.apache.maven.reporting:maven-reporting-impl:jar:2.0:runtime (selected for runtime)
[DEBUG] org.apache.maven.reporting:maven-reporting-api:jar:2.0:runtime (selected for runtime)
[DEBUG] doxia:doxia-sink-api:jar:1.0-alpha-4:runtime (selected for runtime)
[DEBUG] commons-validator:commons-validator:jar:1.1.4:runtime (selected for runtime)
[DEBUG] oro:oro:jar:2.0.7:runtime (removed - nearer found: 2.0.8)
[DEBUG] doxia:doxia-core:jar:1.0-alpha-4:runtime (selected for runtime)
[DEBUG] oro:oro:jar:2.0.7:runtime (removed - nearer found: 2.0.8)
[DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-pmd-plugin:2.1:pmd' -->
[DEBUG] (f) format = xml
[DEBUG] (f) linkXRef = false
[DEBUG] (f) minimumPriority = 5
[DEBUG] (f) outputDirectory = target/site
[DEBUG] (f) project = org.apache.maven.project.MavenProject@b155f86b
[DEBUG] (f) rulesets = [Ljava.lang.String;@1e3118a
[DEBUG] (f) skip = false
[DEBUG] (f) sourceEncoding = utf-8
[DEBUG] (f) targetDirectory = C:\Documents and Settings\laurent\app-test\target
[DEBUG] (f) xrefLocation = C:\Documents and Settings\laurent\app-test\target\site\xref
[DEBUG] -- end configuration --
[INFO] [pmd:pmd]
[DEBUG] Excluded files: '**/*~,**/#*#,**/.#*,**/%*%,**/._*,**/CVS,**/CVS/**,**/.cvsignore,**/SCCS,**/SCCS/**,**/vssver.scc,**/.svn,**/.svn/**,**/.arch-ids,**/.arch-ids/**,**/.DS_Store'
[DEBUG] Preparing ruleset: src/main/resources/rulesets/codingCustomerRulesTest.xml
[DEBUG] Before: src/main/resources/rulesets/codingCustomerRulesTest.xml After: codingCustomerRulesTest.xml
[DEBUG] resolveLocation(src/main/resources/rulesets/codingCustomerRulesTest.xml, C:\Documents and Settings\laurent\app-test\target\codingCustomerRulesTest.xml)
[DEBUG] Location is not a URL.
[DEBUG] Potential File: C:\Documents and Settings\laurent\app-test\src\main\resources\rulesets\codingCustomerRulesTest.xml
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] An error has occurred in Rapport PMD report generation.
Embedded error: crc.rules.customer.CRCParameterNamingConventions
[INFO] ------------------------------------------------------------------------
[DEBUG] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: An error has occurred in Rapport PMD report generation.
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.forkProjectLifecycle(DefaultLifecycleExecutor.java:898)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.forkLifecycle(DefaultLifecycleExecutor.java:734)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:505)
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: An error has occurred in Rapport PMD report generation.
at org.apache.maven.reporting.AbstractMavenReport.execute(AbstractMavenReport.java:79)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:412)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:534)
... 19 more
Caused by: java.lang.ClassCastException: crc.rules.customer.CRCParameterNamingConventions
at net.sourceforge.pmd.RuleSetFactory.parseInternallyDefinedRuleNode(RuleSetFactory.java:309)
at net.sourceforge.pmd.RuleSetFactory.parseRuleNode(RuleSetFactory.java:292)
at net.sourceforge.pmd.RuleSetFactory.createRuleSet(RuleSetFactory.java:230)
at net.sourceforge.pmd.RuleSetFactory.createRuleSet(RuleSetFactory.java:202)
at org.apache.maven.plugin.pmd.PmdReport.executeReport(PmdReport.java:176)
at org.apache.maven.reporting.AbstractMavenReport.generate(AbstractMavenReport.java:98)
at org.apache.maven.reporting.AbstractMavenReport.execute(AbstractMavenReport.java:73)
... 21 more
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 seconds
[INFO] Finished at: Sun Nov 26 00:40:38 CET 2006
[INFO] Final Memory: 3M/6M
[INFO] ------------------------------------------------------------------------
il semblerait que le maven-pmd-plugin utilise comme dépendance la version 3.7
du jar pmd (pmd:pmd:jar:3.7:runtime). Ce qui pourrait causer la ClassCastException.
Y-a-t-il un moyen pour que le maven-pmd-plugin utilise la version 3.8 du plug-in ?
merci
Partager