Quelqu'un peut-il m'aider à trouver une solution à l'erreur ci-dessous.
Voici la version des composants à configurer
commande d'exécution
mvn -fn -e org.sonarsource.scanner.maven:sonar-maven-plugin:RELEASE:sonar -Dsonar.jdbc.url="jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance" -Dsonar.Host.url=http://localhost:9000 -DskipTests
Dans la fenêtre de la console, je reçois une erreur
[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:
3.2:sonar (default-cli) on project NWT_Core: Execution default-cli of goal org.s
onarsource.scanner.maven:sonar-maven-plugin:3.2:sonar failed: Unable to load the
mojo 'sonar' in the plugin 'org.sonarsource.scanner.maven:sonar-maven-plugin:3.
2' due to an API incompatibility: org.codehaus.plexus.component.repository.excep
tion.ComponentLookupException: org/sonarsource/scanner/maven/SonarQubeMojo : Unsupported major.minor version 52.0
Indépendamment de ce que vous compilez avec votre code, l'analyse SonarQube doit être exécutée avec Java 8. Vous devez simplement utiliser différentes versions de JDK pour la compilation et l'analyse. Soit cela, soit tout faire avec Java 8 et -target 1.7
.
Depuis la 3.2, le plugin SonarQube maven nécessite Java 8. Vous devez utiliser la version 3.0.2 pour Java 7.
Vous devez ajouter explicitement cette déclaration à votre pom:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>3.0.2</version>
</plugin>
Parce que si vous ne le faites pas, par défaut, ce plugin utilise la dernière version du plugin (3.2), d'où votre erreur.
Dans mon cas, j'avais un parent pom avec
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.sonar</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.5</version>
</plugin>
</plugins>
</pluginManagement>
</build>
J'ai ajouté ma propre version également dans pluginManagement
dans mon pom enfant mais cela n'a pas fonctionné j'ai dû ajouter le plugin au <build><plugins>
nœuds au lieu de <build><pluginManagement><plugins>
. Seulement alors, une nouvelle version plus récente avait été utilisée.
Peut-être que cela aide quelqu'un.
Récemment, installez l'image Sonorqube.5.12 dans le menu fixe et poussez le projet dans Sonorqube. Au départ, nous étions confrontés à des erreurs de console Maven comme version major.minor 52..
Plus tard, a été corrigé par l'étape ci-dessous pour moi.
Ajoutez ces plugins dans maven.
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.6</version>
</plugin>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
</plugins>
Ensuite, ajoutez la configuration de base de données par défaut dans le fichier ~/.m2/settings.xml
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>jdbc:h2:tcp://localhost:9092/sonar</sonar.jdbc.url>
<sonar.Host.url>http://localhost:9000</sonar.Host.url>
<sonar.jdbc.username>sonar</sonar.jdbc.username>
<sonar.jdbc.password>sonar</sonar.jdbc.password>
<sonar.pdf.username>admin</sonar.pdf.username>
<sonar.pdf.password>admin</sonar.pdf.password>
</properties>
</profile>