web-dev-qa-db-fra.com

Impossible de localiser la source XRef à laquelle se connecter

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!

49
ufk

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.

63
poussma

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.

39
rec

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

0
M3HD1