web-dev-qa-db-fra.com

java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation: Major.minor version non prise en charge 52.0

Détails de l'environnement:

  • SonarQube 5.6
  • Apache Maven 3.3.9
  • Version Java: 1.7.0_09

J'ai intégré le plug-in SonarQube au projet Java Maven, comme dans pom.xml

<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.sonarsource.scanner.maven</groupId>
                <artifactId>sonar-maven-plugin</artifactId>
                <version>3.0.2</version>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

Lors de l'exécution de l'objectif: mvn sonar:sonar -Dsonar.Host.url=<url>

Obtenir une exception:

[ERREUR] Echec de l'exécution de l'objectif org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2: sonar (valeur par défaut) dans le projet example-Java-maven: Exécution default-cli de l'objectif org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2: échec du sonar: Une incompatibilité d'API a été rencontrée lors de l'exécution de org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2: sonar: Java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation: Major.minor version 52.0 .__ non prise en charge. [ERREUR] ----------------------------------------------- ------ [ERREUR] realm = plugin> org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2

21
user3492783

SonarQube 5.6 requiert au moins Java 8 (voir exigences ). Notez qu'il ne s'agit pas simplement d'une exigence côté serveur, mais également côté client où les analyses sont exécutées.

Comme agabrys mentionné dans son commentaire, le Unsupported major.minor est une erreur Java classique (voir ce fil ).

Je viens de rencontrer ce problème moi-même. Ma solution étant donné que mon code et ma plateforme en cours de développement utilise actuellement uniquement Java 7 et ne peut pas utiliser Java 8, j'ai décidé de lancer la version précédente/tag (5.5) avec:

Voir les tags ici: Tags pour sonarqube at hub.docker.com

docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 sonarqube:5.5

2
Ed Bragg

Vous avez besoin d'au moins JDK 1.8. En savoir plus sur la version major.minor à l'adresse: Comment corriger Java.lang.UnsupportedClassVersionError: Version non prise en charge de major.minor

1
agabrys

Pour prolonger les réponses d'Agabrys et de Nicolas B:

Vous devez vous rendre sur le site Web d’Oracle et télécharger un jdk de la version 8.

Et configurez le config.xml de jenkins, qui se trouve normalement dans /var/lib/jenkins et ajoutez un jdk:

<jdk>
  <name>jdk1.8</name>
  <home>/usr/Java/jdk1.8.0_144</home>
  <properties/>
</jdk>

dans la section. Ou vous pouvez l'ajouter sur le site Web de Jenkins à l'adresse gérer Jenkins -> configuration globale de l'outil.

0
dotslashlu