J'ai un projet Web Maven dans mon référentiel.
Je suis un Noob Maven mais je comprends toujours le fait qu'il existe des plugins que nous devons configurer seulement alors nous pourrions exécuter des commandes spécifiques aux plugins.
Faits:
J'ai un serveur sonar en cours d'exécution sur ma machine locale au port 9000.
Je n'ai ajouté aucun plugin spécifique au sonar dans mon POM.xml
Référence:
http://www.sonarsource.org/we-had-a-dream-mvn-sonarsonar/
Observation:
Mais quand je lance mvn sonar:sonar
dans mon projet à partir de la ligne de commande, cela fonctionne bien.
Le fait est Je n'ai PAS configuré de plugin sonar dans mon POM.xml Même à partir de là où l'enfer Maven prend et comprend l'objectif/la commande "sonar: sonar"?
Question/curiosité:
Je ne veux pas la connaissance pratique du sonar lui-même. Je veux savoir pourquoi mvn sonar:sonar
fonctionne sans configurer un plugin sonar dans mon pom.xml
POURQUOI et comment?
La raison en est que le plug-in Sonar Maven est hébergé sur le projet Codehaus Mojo et bénéficie du groupId "org.codehaus.mojo". Cela permet d'utiliser le raccourci "sonar: sonar" au lieu de "org.codehaus.mojo: sonar-maven-plugin :: sonar" (voir la section "Configurer Maven pour rechercher des plugins" de la documentation Maven )
Sonar possède son propre ensemble de plugins (par exemple maven-checkstyle-plugin) qu'il exécute lorsqu'il est appelé. Ces plugins sont automatiquement configurés en fonction des paramètres de votre projet dans votre serveur Sonar configuré.
Le raisonnement derrière cela pour avoir une configuration contrôlée dans votre instance de sondeur.
La raison pour laquelle cela fonctionne automatiquement pour vous est que vous utilisez les valeurs par défaut pour l'installation de votre serveur sonar (localhost: 9000).
Cette approche de "configuration zéro" est plus détaillée ici: Nous avions un rêve: sonar mvn: sonar