web-dev-qa-db-fra.com

SonarQube Exclure un répertoire

J'essaie d'exclure un répertoire de l'analyse de Sonar. J'ai les propriétés suivantes définies dans mon fichier sonar-project.properties:

sonar.sources=src/Java
sonar.exclusions=src/Java/test/****/*.Java

La structure de répertoire que j'ai est la suivante:

src/Java/Dig
src/Java/test/Dig

Lorsque je lance le coureur de sonar, les informations suivantes sont affichées:

 INFO  - Excluded sources:
 INFO  -   src/Java/test/**/*.Java
 INFO  - Excluded tests:
 INFO  -   **/package-info.Java

Mais lorsque je vérifie le résultat de l'analyse, tous les packages du répertoire de test sont toujours présents.

Je dois juste dire à Sonar de ne pas analyser le répertoire de test ni les packages qu’il contient.

72
user1982350

Essayez quelque chose comme ça:

sonar.exclusions=src/Java/test/**
71
Juan Hernandez

Je suis capable d'exclure plusieurs répertoires en utilisant la configuration ci-dessous (chemins de dossiers séparés par des virgules)

sonar.exclusions=system/**, test/**, application/third_party/**, application/logs/**

Et pendant que je courais le coureur de sonar, j’ai le suivant dans le journal

Excluded sources: 
  system/**
  test/**
  application/third_party/**
  application/logs/**
42
Damodaran

Le moyen le plus simple consiste à accéder à l'URL du serveur après le démarrage du serveur (localhost: 8080), puis à vous connecter en tant qu'administrateur. Accédez à paramètres> Exclusions> Exclusions du fichier source - Ajoutez vos packages ici . Redémarrez le serveur.

8
Maverick

Si nous voulons ignorer tout le dossier suivant peut être utilisé:

sonar.exclusions=folderName/**/*

Et si nous n’avons qu’un seul fichier, indiquez le chemin complet.

Tous les dossiers qui doivent être exclus et ajoutés ici. 

7
Shradha Modi

Une autre option de configuration consiste à ajouter un maven properties sonar.exclusions. Voici un exemple de fichier pom avec les exclusions des répertoires static jquery et pdf viewer.

<project >
<modelVersion>4.0.0</modelVersion>
<artifactId>my Artifact</artifactId>
<!-- Enviroment variables can be referenced as such: ${env.PATH} -->
<packaging>war</packaging>
<url>http://maven.Apache.org</url>

<properties>

    <junit.version>4.9</junit.version>
    <mockito.version>1.9.5</mockito.version>
    <jackson.version>1.9.7</jackson.version>
    <powermock.version>1.5</powermock.version>

    <!--Exclude the files Here-->
    <sonar.exclusions>src/main/webapp/static/jquery_ui/*,src/main/webapp/static/pdf-viewer/*,src/main/webapp/static/pdf-viewer/**,src/main/webapp/static/pdf-viewer/**/*</sonar.exclusions>
</properties>

5
Akin Okegbile

Cela fonctionnera pour votre cas:

sonar.exclusions=**/src/Java/Dig/ ** , **/src/Java/test/Dig/ **
4
Michael Arul Raja

quelle version de sonar utilisez-vous? Il existe une option appelée " sonar.skippedModules = votrenommodule ".

Cela ignorera tout le module. Alors soyez au courant.

2
Cypher

Juste pour mentionner qu'une fois que vous avez exclu les fichiers de Sonar, faites de même pour le plugin Jacoco:

<configuration>
<excludes>     
<exclude>com/acme/model/persistence/entity/TransactionEntity*</exclude>
<exclude>com/acme/model/persistence/ModelConstants.class</exclude>
</excludes>
</configuration> 
0
user07