Java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation: Неподдерживаемый major.minor version 52.0
Сведения об окружающей среде:
- SonarQube 5.6
- Apache Maven 3.3.9
- Версия Java: 1.7.0_09
Я включил плагин SonarQube с проектом java maven, как в 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>
При выполнении цели: mvn sonar:sonar -Dsonar.host.url=<url>
Получение исключения:
[ERROR] Не удалось выполнить цель org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2: sonar (default-cli) в примере проекта-java-maven: Выполнение default-cli цели org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2: не удалось выполнить сонар: При выполнении org.sonarsource.scanner.maven была обнаружена несовместимость API: sonar-maven-plugin: 3.0.2: sonar: java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation: Неподдерживаемая версия major.minor 52.0 [ОШИБКА] ----------------------------------------------- ------ [ERROR] realm = плагин > org.sonarsource.scanner.maven: sonar-maven-plugin: 3.0.2
Ответы
Ответ 1
Для SonarQube 5.6 требуется хотя бы Java 8 (см. requirements). Обратите внимание, что это не просто требование на стороне сервера, оно также требуется на стороне клиента, где выполняется анализ.
Как agabrys, упомянутый в его комментарии, Unsupported major.minor
является классической ошибкой Java (см. этот поток).
Ответ 2
Я сам столкнулся с этой проблемой. Мое решение с момента разработки моего кода и платформы в настоящее время использует только Java 7 и не может использовать Java 8, я решил запустить предыдущий релиз/тег (5.5) с помощью:
Смотрите теги здесь:
Теги для sonarqube на hub.docker.com
docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 sonarqube:5.5
Ответ 3
Вам нужно как минимум JDK 1.8. Подробнее о версии major.minor
: Как исправить java.lang.UnsupportedClassVersionError: Неподдерживаемая версия major.minor
Ответ 4
Чтобы еще больше расширить ответы от agabrys 'и Nicolas B:
Вам нужно перейти на сайт oracle и загрузить jdk версии 8.
И настройте jenkins config.xml
, который обычно находится в /var/lib/jenkins
и добавляет jdk:
<jdk>
<name>jdk1.8</name>
<home>/usr/java/jdk1.8.0_144</home>
<properties/>
</jdk>
в разделе. Или вы можете добавить его на веб-сайт jenkins, чтобы управлять настройкой jenkins → global tool.