bonjour,
j'ai codé mes propres régles PMD.
J'ai généré un ruleset.xml avec mes règles.
j'ai créer un projet avec maven2 pour pouvoir y tester mes règles.
voici le pom.xml :
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>xxxx.application.test</groupId> <artifactId>app-test</artifactId> <packaging>jar</packaging> <version>1.0</version> <name>Maven Quick Start Archetype</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>pmd</groupId> <artifactId>pmd</artifactId> <version>3.7</version> <scope>compile</scope> </dependency> <dependency> <groupId>crc.rules</groupId> <artifactId>CodingCustomerRulesPrj</artifactId> <version>0.0.1</version> <scope>compile</scope> </dependency> </dependencies> <reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-pmd-plugin</artifactId> <configuration> <rulesets> <ruleset>src/main/resources/rulesets/codingCustomerRules.xml</ruleset> </rulesets> </configuration> </plugin> </plugins> </reporting> </project>
le projet contenant les nouvelles règles a le pom.xml suivant :
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>crc.rules</groupId> <artifactId>CodingCustomerRulesPrj</artifactId> <packaging>jar</packaging> <version>0.0.1</version> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>pmd</groupId> <artifactId>pmd</artifactId> <version>3.7</version> <scope>compile</scope> </dependency> </dependencies> </project>
Celui-ci est installé dans mon repository local.
Quand je lance la commande:
mvn pmd:pmd
sous le projet de test à savoir 'app-test' j'ai le résultat suivant :
il n'arrive pas à trouver la classe crc.rules.customer.CRCClassNamingConventions pourtant elle a bien était compilée et elle se trouve bien dans le jar sur le repository local.[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'pmd'.
[INFO] ----------------------------------------------------------------------------
[INFO] Building Maven Quick Start Archetype
[INFO] task-segment: [pmd:pmd]
[INFO] ----------------------------------------------------------------------------
[INFO] [pmd:pmd]
[WARNING] Unable to locate Source XRef to link to - DISABLED
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] An error has occurred in Rapport PMD report generation.
Embedded error: Couldn't find that class crc.rules.customer.CRCClassNamingConventions
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 seconds
[INFO] Finished at: Sun Nov 19 23:10:35 CET 2006
[INFO] Final Memory: 3M/7M
[INFO] ------------------------------------------------------------------------
help me, please !
Partager