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:sonarje 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