web-dev-qa-db-de.com

java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation: Nicht unterstützte Hauptversion

Umgebungsdetails:

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

Ich habe das SonarQube-Plugin mit einem Java-Maven-Projekt wie in pom.xml integriert

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

Während der Ausführung des Ziels: mvn sonar:sonar -Dsonar.Host.url=<url>

Ausnahme bekommen:

[ERROR] Fehler beim Ausführen des Ziels org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2: sonar (default-cli) für Beispiel-Java-maven: Ausführung default-cli des Ziels org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2: Sonar fehlgeschlagen: Bei der Ausführung von org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2: sonar: .__ wurde eine Inkompatibilität der API festgestellt. Java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation: Nicht unterstützte Major-Minor-Version 52.0 [ERROR] ----------------------------------------------- ------ [ERROR] realm = plugin> org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2

21
user3492783

SonarQube 5.6 erfordert mindestens Java 8 (siehe Anforderungen ). Beachten Sie, dass dies nicht nur eine Anforderung auf der Serverseite ist, sondern auch auf der Clientseite, auf der die Analyse ausgeführt wird.

Wie in seinem Kommentar agabrys erwähnt, ist der Unsupported major.minor ein klassischer Java-Fehler (siehe diesen Thread ).

Ich bin gerade selbst auf dieses Problem gestoßen. Da mein Code und meine Plattform gerade entwickelt werden, wird derzeit nur Java 7 verwendet. Java 8 kann nicht verwendet werden. Ich entschied mich für das vorherige Release (5.5) mit:

Tags finden Sie hier: Tags für sonarqube auf hub.docker.com

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

2
Ed Bragg

Sie benötigen mindestens JDK 1.8. Weitere Informationen zu major.minor-Version finden Sie unter: So beheben Sie Java.lang.UnsupportedClassVersionError: Nicht unterstützte Hauptversion

1
agabrys

Um die Antworten von Agabrys und Nicolas B weiter auszudehnen:

Sie müssen auf die Oracle-Website gehen und ein jdk der Version 8 herunterladen.

Und konfigurieren Sie jenkins 'config.xml, der sich normalerweise in /var/lib/jenkins befindet, und fügen Sie ein jdk hinzu:

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

im Bereich. Sie können es auch auf der jenkins-Website unter jenkins verwalten -> globale Werkzeugkonfiguration hinzufügen.

0
dotslashlu