2010-02-11 6 views
1

Je findbugs (et checkstyle) configurés dans mon projet pom.xml: Sonar ne pas utiliser le excludeFilterFile des projets pom.xml

<plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>findbugs-maven-plugin</artifactId> 
     <version>2.3</version> 
     <configuration> 
      <xmlOutput>true</xmlOutput> 
      <threshold>Normal</threshold> 
      <effort>Max</effort> 
      <debug>false</debug> 
      <excludeFilterFile>${basedir}/src/test/config/findbugs-exclude.xml</excludeFilterFile> 
     </configuration> 
    </plugin> 

    <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-checkstyle-plugin</artifactId> 
     <version>2.4</version> 
     <configuration> 
      <suppressionsLocation>${basedir}/src/test/config/checkstyle-surpressions.xml</suppressionsLocation> 
      <testFailureIgnore>false</testFailureIgnore> 
     </configuration> 
    </plugin> 

    <!--.......--> 
</plugins> 

Et cela fonctionne comme un charme . 'site mvn' produit un rapport sur les cubes qui utilise correctement le fichier excludeFileterFile spécifié.

Le problème est lorsque j'essaie d'utiliser le plug-in sonar. ('mvn sonar: sonar') Sonar n'utilisez pas le filtre d'exclusion spécifié ci-dessus. (Mais il utilisera correctement le fichier de suppression de checkstyle).

Informations provenant de la console lors de l'exécution de 'mvn sonar: sonar':
AVERTISSEMENT: Le fichier de paramètres utilisateur alternatif: C: \ Users \ rgi.m2 \ settings.xml n'est pas valide. Utilisation du chemin par défaut

[INFO] Scanning for projects... 
[INFO] ------------------------------------------------------------------------ 
.... 
[INFO] [findbugs:findbugs {execution: default-cli}] 
[INFO] Using source root: 
[INFO]  <...edit...>\target\classes 
[INFO] Using test source root: 
[INFO]  <...edit...>\target\test-classes 
[INFO] Using maximum effort. 
[INFO] Adding Source Directory: <...edit...>\src\main\java 
[INFO] Using low threshold. 
[INFO] Using FindBugs Version: 1.3.8 
[INFO] Using low threshold. 
[INFO] Using low threshold. 
[INFO] Using the xdoc format 
[INFO] Using maximum effort. 
[INFO] Using low threshold. 
[INFO] Using low threshold. 
[INFO] Debugging is Off 
[INFO] Using bug include filter <...edit...>\target\sonar\findbugs-include.xml 
[INFO] Using bug exclude filter <...edit...>\target\sonar\findbugs-exclude.xml 
[INFO] Printing Errors 
    ..... 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESSFUL 
[INFO] ------------------------------------------------------------------------ 

Et le sonar pom.xml dans le répertoire cible/sonar:

<plugin> 
    <artifactId>maven-checkstyle-plugin</artifactId> 
    <version>2.2</version> 
    <dependencies> 
     <dependency> 
      <groupId>org.codehaus.sonar.runtime.rules-extensions</groupId> 
      <artifactId>parent</artifactId> 
      <version>20100210071723</version> 
      <type>pom</type> 
     </dependency> 
    </dependencies> 
    <configuration> 
     <suppressionsLocation>{...edit...}/src/test/config/checkstyle-surpressions.xml</suppressionsLocation> 
     <testFailureIgnore>false</testFailureIgnore> 
     <outputFileFormat>xml</outputFileFormat> 
     <consoleOutput>false</consoleOutput> 
     <enableRSS>false</enableRSS> 
     <skip>false</skip> 
     <failsOnError>false</failsOnError> 
     <configLocation>{...edit...}\target\sonar\checkstyle.xml</configLocation> 
    </configuration> 
</plugin> 
<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>findbugs-maven-plugin</artifactId> 
    <version>2.0.1</version> 
    <configuration> 
     <xmlOutput>true</xmlOutput> 
     <threshold>Low</threshold> 
     <effort>Max</effort> 
     <debug>false</debug> 
     <excludeFilterFile>{...edit...}\target\sonar\findbugs-exclude.xml</excludeFilterFile> 
     <classFilesDirectory>{...edit...}\target\classes</classFilesDirectory> 
     <skip>false</skip> 
      <includeFilterFile>{...edit...}\target\sonar\findbugs-include.xml</includeFilterFile> 
    </configuration> 
</plugin> 

Notez que dans Checkstyle sonar pom.xml référés au fichier dans la configuration du projet, mais ne comprennent pas le fichier findbugs est fichier vide factice de sonar. Quelqu'un sait-il comment utiliser le sonar pour utiliser les fichiers d'exclure les fichiers fins définis dans le projet pom.xml?

Thx à l'avance
/Roy

Répondre

0

Je pense que vous pouvez le configurer sur le Serverside du sonar dans les paramètres du projet pour findbugs

+0

Je peux ajouter des filtres simples (pas de référence au fichier de filtre) sur le serveur sonar. Mais ce ne sera pas bon, car je dois alors administrer de faux positifs dans plusieurs endroits. – Roy

1

Quelle version sonar utilisez-vous? Ce problème devrait vous aider: http://jira.codehaus.org/browse/SONAR-1119

+0

Salut Simon. J'utilise Sonar 1.12 et j'ai également essayé d'exécuter le plugin avec -Dsonar.reuseExistingRulesConfiguration = true mais cela ne semble pas aider. – Roy

Questions connexes