Plugin Sonar Maven: Comment exclure les répertoires de sources de test?
J'ai un projet Maven avec des sources Java et Scala sources de test. - Je générer de couverture de code à l'aide de Jacoco
au cours de la verify
scène. Lorsque j'essaie d'exécuter le sonar objectif soit pendant la phase de vérication par l'ajout d'une exécution, ou par l'exécution de mvn verify sonar:sonar
je me retrouve avec le répertoire de test ajoutés deux fois par Sonar:
[INFO] [11:15:34.756] Test directories:
[INFO] [11:15:34.756] /Users/xxx/Documents/workspace/misc/xxx/src/test/scala
[INFO] [11:15:34.756] /Users/xxx/Documents/workspace/misc/xxx/src/test/scala/../scala
qui résultats dans l'analyse échoue avec l'erreur suivante:
Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.1:sonar (default-cli) on project kv-mapper: Can not execute SonarQube analysis: Unable to read and import the source file : '/Users/xxxx/Documents/workspace/misc/xxx/src/test/scala/../scala/xxx/xxxxx/xxx/xxx/xxxxx/xxxxxx.java' with the charset : 'UTF-8'. Duplicate source for resource
Mon pom.xml (Sonar) ressemble à ceci.
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>${sonar.plugin.version}</version>
<!-- no default executions -->
<configuration>
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
<sonar.language>java</sonar.language>
<sonar.jacoco.itReportPath>
${basedir}/target/jacoco.exec
</sonar.jacoco.itReportPath>
<sonar.exclusions>
**/test/*
</sonar.exclusions>
</configuration>
</plugin>
Comment puis-je configurer Sonar:
- exclure test/scala répertoire entièrement?
ou - supprimer les doublons du répertoire?
source d'informationauteur Siddhu
Vous devez vous connecter pour publier un commentaire.
Ajouter une étape pour supprimer le dossier avant de lancer la SonarQube analyse.
Ou définir des exclusions sur les fichiers de test. Voir http://docs.sonarqube.org/display/SONAR/Narrowing+la+Focus#NarrowingtheFocus-IgnoreFiles
sonar.test.exclusions doit être utilisé au lieu de sonar.exclusions