Такая проблем уже не впервые, не помню как получилось решить, вроде бы новый проект создавал.
Крч есть класс, есть метод main() и есть System.out.println("Hello");
При вызове мейна выбивает ошибку компиляции и Error:java: error: release version 5 not supported
В чём может быть проблема и как её решить?
Проблемный метод:
public static void main(String[] args) {
System.out.println("Hello");
}
Скрин настроек проекта: настройки проекта
-
Насколько мне известно, в Java нет такого метода, как sout. Обычно в некоторых средах данная аббревиатура используется для того, чтобы редактор сам подставил System.out.printlnVlad from Moscow– Vlad from Moscow2019年04月06日 13:29:29 +00:00Commented 6 апр. 2019 в 13:29
-
Извините, я просто сократил. В Inteliij Idea при вводе комбинации sout прописывается System.out.println().ImmRaytal– ImmRaytal2019年04月06日 13:31:41 +00:00Commented 6 апр. 2019 в 13:31
-
В таком случае продемонстрируйте минимальный готовый пример, которые генерирует подобную ошибку.Vlad from Moscow– Vlad from Moscow2019年04月06日 13:33:23 +00:00Commented 6 апр. 2019 в 13:33
-
@ImmRaytal, покажите что у вас в настройках проекта в IDE - возможно там стоит, собственно, 5 версия Явы и потому оно и не пашет. Коли так - то там можно её поменять на 8+ и всё должно заработать.ЮрийСПб– ЮрийСПб ♦2019年04月06日 13:34:21 +00:00Commented 6 апр. 2019 в 13:34
-
@ЮрийСПб , шапку обновилImmRaytal– ImmRaytal2019年04月06日 13:41:46 +00:00Commented 6 апр. 2019 в 13:41
6 ответов 6
Если используете 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 и версия компилятора могут сбиваться, поэтому перед очередной сборкой проверяйте, чтобы всё соответствовало Вашей основной версии проекта.
Уже прошло два месяца автор наверняка не нуждается в помощи, но это возможно поможет тем кто ищет подобный ответ. Preferences -> Build, Execution, Deployment -> Java Compiler: Project bytecode version: 6 Target bytecode version: 6 Попробуйте поменять на именно 6-ю версию, мне помогло!
-
1Помогло! От себя добавлю: поменять нужно не именно на 6-ю версию, а на 6 либо выше: 7, 8, ...iamtodor– iamtodor2019年12月22日 20:59:10 +00:00Commented 22 дек. 2019 в 20:59
file->settings->search: Java Compiler -> Target bytecode version: 11
-
7Пожалуйста, пишите более подробные ответы.A K– A K2019年06月05日 09:56:12 +00:00Commented 5 июн. 2019 в 9:56
-
Спасибо! заработалоAlex Sapsay– Alex Sapsay2021年11月22日 19:29:05 +00:00Commented 22 нояб. 2021 в 19:29
<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>
-
3добро пожаловать на Stack Overflow на русском! пожалуйста, постарайтесь оставлять чуть более развёрнутые ответы. дополнить ответ можно, нажав правитьaleksandr barakin– aleksandr barakin2019年10月27日 18:51:27 +00:00Commented 27 окт. 2019 в 18:51
Из официальной документации к компилятору:
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-файл нужно проверить на наличие соответствующих параметров.
Я проверила все настройки, какие нашла, добавила в pom.xml указание 14 версии, но это не помогло. В моём случае проблема оказалась в файле ProjectName.iml, где было указано
<module type="JAVA_MODULE" version="4" />
Я заменила 4 на 14, всё заработало.
Начните задавать вопросы и получать на них ответы
Найдите ответ на свой вопрос, задав его.
Задать вопрос