J'ai un grand projet maven qui utilise le plugin pmd pour les contrôles de qualité du code.
depuis que j'ai commencé à utiliser le plugin pmd, le message d'avertissement suivant s'affiche:
[WARNING] Unable to locate Source XRef to link to - DISABLED
J'ai cherché sur Google et découvert que je devais implémenter le plugin jxr.
j'ajoute donc ce qui suit à la propriété de construction dans le fichier principal pom.xml.
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.3</version>
</plugin>
welp ça ne change vraiment rien.
des idées que je dois mettre en œuvre afin de résoudre ce message d'avertissement?
sortie de mvn -version
Apache Maven 3.0.4 (r1232337; 2012-01-17 10:44:56+0200)
Maven home: /usr/share/maven-bin-3.0
Java version: 1.7.0_05, vendor: Oracle Corporation
Java home: /usr/lib64/icedtea7/jre
Default locale: en_US, platform encoding: ANSI_X3.4-1968
OS name: "linux", version: "3.5.2-gentoo", Arch: "AMD64", family: "unix"
merci!
Vous devez ajouter le maven-jxr-plugin
à la sectionreportingPlugin
.
<reporting>
<plugins>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.3</version>
</plugin>
</plugins>
</reporting>
Lancez-le et profitez-en.
En passant, vous devrez peut-être exécuter une fois l'objectif jxr:jxr
pour générer un fichier qui sera utilisé par pmd.
Notez qu’il est également possible de désactiver la fonction xréf en ajoutant
<configuration>
<linkXRef>false</linkXRef>
</configuration>
au plugin maven-pmd-plugin. Cela résout l'avertissement sans allonger encore la construction en raison de l'exécution d'un plugin de rapport supplémentaire. Par exemple. Si vous exécutez vos versions dans Jenkins, le plug-in Jenkins PMD peut prendre en charge la mise en relation des avertissements PMD avec le code source. Il n'est pas nécessaire d'exécuter un autre plug-in Maven pour cela.
Vous devez ajouter le plugin maven-jxr et exécuter l'objectif jxr:jxr
avant le cycle de vie site
si le maven-jxr-plugin
est ajouté en tant que plugin, comme dans votre cas:clean jxr:jxr site
Sinon, vous devriez l'ajouter en tant que rapport si vous voulez que cela fonctionne avec mvn site
. Jetez un coup d’œil à la documentation d’utilisation de JXR: JXR Usage