web-dev-qa-db-fra.com

Comment exclure un projet maven de l'analyse sonar

J'ai beaucoup (disons 10 (A, B, C ...)) plugin Eclipse qui est basé sur Maven.

J'ai un fichier pom maître qui inclut tous les autres projets de plugin. maintenant, en construisant le fichier maître avec l'objectif sonar:sonar, il construira tous les plugins.

Alors ma question: Y at-il un moyen pour que je puisse exclure un plugin, disons A et C.?

18
Sumit Singh

NOTE: Cette propriété est obsolète depuis la version 4.3 et ne devrait plus être utilisée.

À partir de documentation , il existe une option permettant de sauter un module à l'aide de sonar.skippedModules.

Vous pouvez également le faire à partir de la page d’administration du sonar, comme indiqué dans la section Saut de modules ici .

1
Raghuram

Il existe plusieurs manières, dont l'une consiste à ajouter la propriété sonar.skip à l'intérieur du pom.xml du projet/module que vous souhaitez ignorer.

Cela exclut un projet de l'analyse SonarQube:

<properties>
    <sonar.skip>true</sonar.skip>
</properties>

Cela fonctionne également avec Jenkins et l'exécution de Sonar en tant qu'action post-build.

Pour plus de détails, voir: Analyse avec SonarQube Scanner for Maven

40
Cryn

Je n’ai pas eu de chance avec le sonar.skip officiellement documenté: quand je l’ai mis dans un POM de sous-module, j’ai vu

[INFO] Delaying SonarQube Scanner to the end of multi-module project

après les modules qui auraient dû être inclus, puis

[INFO] sonar.skip = true: Skipping analysis

à la fin de la construction du réacteur, et il n'y avait pas d'analyse/téléchargement.

Au lieu de cela, j'ai défini sonar.exclusions dans le POM racine avec un pattern correspondant aux fichiers source (par chemin du paquet) qui seraient utilisés dans le sous-module à ignorer. Cela semble avoir fonctionné.


De plus, la définition de sonar.projectKey dans le POM racine ne fonctionnait pas; Sonar s'est plaint que

Project '…' can't have 2 modules with the following key: …

que j'ai corrigé en déplaçant ceci vers .mvn/maven.config:

-Dsonar.projectKey=…
1
Jesse Glick