web-dev-qa-db-ja.com

java.lang.UnsupportedClassVersionError:org / sonar / batch / bootstrapper / EnvironmentInformation:サポートされていないmajor.minorバージョン52.0

環境の詳細:

  • SonarQube 5.6
  • Apache Maven 3.3.9
  • Javaバージョン:1.7.0_09

SonarQubeプラグインをpom.xmlのようなJava mavenプロジェクトと統合しました

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

目標の実行中:mvn sonar:sonar -Dsonar.Host.url=<url>

例外を取得する:

[エラー]プロジェクトexample-Java-mavenでのゴールorg.sonarsource.scanner.maven:sonar-maven-plugin:3.0.2:sonar(default-cli)の実行に失敗しました:ゴールorg.sonarsource.scannerの実行default-cli .maven:sonar-maven-plugin:3.0.2:sonar failed:org.sonarsource.scanner.maven:sonar-maven-plugin:3.0.2:sonar:Java.lang.UnsupportedClassVersionError:orgの実行中にAPIの非互換性が発生しました/ sonar/batch/bootstrapper/EnvironmentInformation:サポートされていないmajor.minorバージョン52.0 [エラー] -------------------------------- --------------------- [エラー] realm = plugin> org.sonarsource.scanner.maven:sonar-maven-plugin:3.0.2

21
user3492783

SonarQube 5.6では、少なくともJava 8( requirements を参照)。これはサーバー側の単なる要件ではなく、クライアント側でも必要であることに注意してください。分析が実行されます。

agabrys が彼のコメントで言及されているように、Unsupported major.minorは古典的なJavaエラーです( this thread を参照)。

私は自分でこの問題に遭遇しました。開発中のコードとプラットフォームは、現在Java 7のみを使用しており、Java 8を使用できません。以前のリリース/タグ( 5.5)と:

ここのタグを参照してください。 hub.docker.comのsonarqubeのタグ

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

2
Ed Bragg

少なくともJDK 1.8が必要です。 major.minorバージョンの詳細については、次を参照してください。 Java.lang.UnsupportedClassVersionErrorの修正方法:サポートされていないmajor.minorバージョン

1
agabrys

アガブリスとニコラスBの答えをさらに拡張するには:

OracleのWebサイトにアクセスして、バージョン8のjdkをダウンロードする必要があります。

そして、ジェンキンスのconfig.xml、通常は/var/lib/jenkinsおよびjdkを追加します。

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

セクションで。または、jenkins Webサイトのjenkinsの管理->グローバルツール構成で追加できます。

0
dotslashlu