12

Такая проблем уже не впервые, не помню как получилось решить, вроде бы новый проект создавал. Крч есть класс, есть метод main() и есть System.out.println("Hello"); При вызове мейна выбивает ошибку компиляции и Error:java: error: release version 5 not supported В чём может быть проблема и как её решить?

Проблемный метод:

public static void main(String[] args) {
 System.out.println("Hello");
}

Скрин настроек проекта: настройки проекта

задан 6 апр. 2019 в 13:23
7
  • Насколько мне известно, в Java нет такого метода, как sout. Обычно в некоторых средах данная аббревиатура используется для того, чтобы редактор сам подставил System.out.println Commented 6 апр. 2019 в 13:29
  • Извините, я просто сократил. В Inteliij Idea при вводе комбинации sout прописывается System.out.println(). Commented 6 апр. 2019 в 13:31
  • В таком случае продемонстрируйте минимальный готовый пример, которые генерирует подобную ошибку. Commented 6 апр. 2019 в 13:33
  • @ImmRaytal, покажите что у вас в настройках проекта в IDE - возможно там стоит, собственно, 5 версия Явы и потому оно и не пашет. Коли так - то там можно её поменять на 8+ и всё должно заработать. Commented 6 апр. 2019 в 13:34
  • @ЮрийСПб , шапку обновил Commented 6 апр. 2019 в 13:41

6 ответов 6

42

Если используете IntelijIDEA, то внимательно проверяйте, что у Вас настроено в Project Structure:

Project Structure >> Project >> Project SDK;
Project Structure >> Project >> Project language level;
Project Structure >> Modules >> Dependencies >> Module SDK;
Project Structure >> Modules >> Sources;
Project Structure >> SDKs;

Потому что ошибка java: error: release version 5 not supported может возникать, когда версия компилятора в настройках IDE:

File >> Settings >> Build, Execution, Deployment >> Compiler >> Java Compiler >> project bytecode version >> Per-module bytecode version

не совпадает с той, что указана в Project Structure.

Кроме того, если Вы собираете Jar и успешно сбилдили артефакты, проверьте, чтобы в Run/Debug Configurations версия JRE по дефолту также соответствовала версии проекта.

Если используете сборщик Maven, то можете с помощью POM изменить явно версию проекта, написав такие строчки:

<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>

Или же в плагине:

<build>
 <plugins>
 <plugin>
 <groupId>org.apache.maven.plugins</groupId>
 <artifactId>maven-compiler-plugin</artifactId>
 <configuration>
 <source>1.8</source>
 <target>1.8</target>
 </configuration>
 </plugin>
 </plugins>
</build>

Иногда настройки в Project Structure и версия компилятора могут сбиваться, поэтому перед очередной сборкой проверяйте, чтобы всё соответствовало Вашей основной версии проекта.

ответ дан 26 июл. 2019 в 12:38
15

Уже прошло два месяца автор наверняка не нуждается в помощи, но это возможно поможет тем кто ищет подобный ответ. Preferences -> Build, Execution, Deployment -> Java Compiler: Project bytecode version: 6 Target bytecode version: 6 Попробуйте поменять на именно 6-ю версию, мне помогло!

ответ дан 12 окт. 2019 в 1:18
1
  • 1
    Помогло! От себя добавлю: поменять нужно не именно на 6-ю версию, а на 6 либо выше: 7, 8, ... Commented 22 дек. 2019 в 20:59
7

file->settings->search: Java Compiler -> Target bytecode version: 11

ответ дан 5 июн. 2019 в 9:49
2
  • 7
    Пожалуйста, пишите более подробные ответы. Commented 5 июн. 2019 в 9:56
  • Спасибо! заработало Commented 22 нояб. 2021 в 19:29
2

<plugins>
 <plugin>
 <groupId>org.apache.maven.plugins</groupId>
 <artifactId>maven-compiler-plugin</artifactId>
 <version>3.8.0</version>
 <configuration>
 <release>11</release>
 </configuration>
 </plugin>
 </plugins>

ответ дан 27 окт. 2019 в 18:49
1
  • 3
    добро пожаловать на Stack Overflow на русском! пожалуйста, постарайтесь оставлять чуть более развёрнутые ответы. дополнить ответ можно, нажав править Commented 27 окт. 2019 в 18:51
1

Из официальной документации к компилятору:

Beginning with JDK 9, javac no longer supports -source release settings less than or equal to 5. If settings less than or equal to 5 are used, then the javac command behaves as if -source 6 were specified.

Так что, как уже правильно подсказали, нужно пройтись по настройкам (как самой IDE так и проекта) и проверить, что везде выставлены параметры language level и target bytecode version не ниже 6. А если в проекте используется сборщик, то и build-файл нужно проверить на наличие соответствующих параметров.

ответ дан 12 окт. 2019 в 4:44
0

Я проверила все настройки, какие нашла, добавила в pom.xml указание 14 версии, но это не помогло. В моём случае проблема оказалась в файле ProjectName.iml, где было указано

<module type="JAVA_MODULE" version="4" />

Я заменила 4 на 14, всё заработало.

ответ дан 28 окт. 2020 в 11:29

Ваш ответ

Черновик сохранён
Черновик удалён

Зарегистрируйтесь или войдите

Регистрация через Google
Регистрация через почту

Отправить без регистрации

Необходима, но никому не показывается

Отправить без регистрации

Необходима, но никому не показывается

Нажимая «Отправить ответ», вы соглашаетесь с условиями пользования и подтверждаете, что прочитали политику конфиденциальности.

Начните задавать вопросы и получать на них ответы

Найдите ответ на свой вопрос, задав его.

Задать вопрос

Изучите связанные вопросы

Посмотрите похожие вопросы с этими метками.