/
Вопросы и ответы
/
Java
/

Как исправить ошибку несовместимости версий Java при запуске программы из консоли

Как исправить ошибку несовместимости версий Java при запуске программы из консоли

При компиляции проекта в IntelliJ IDEA программа компилируется, но при запуске через консоль командой java main появляется ошибка:

main has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0.

Что означает эта ошибка и как её исправить, чтобы проект запускался нормально?

22 дня назад

Nikolai Gagarinov

Ответы

1

Эта ошибка возникает из-за того, что версия JDK, которой вы компилируете проект в IntelliJ IDEA, новее, чем версия JRE, используемая для запуска через консоль. В вашем случае:

  • Class file version 55.0 соответствует Java 11
  • Class file version 52.0 соответствует Java 8

То есть вы компилировали проект под Java 11, а запускаете его с Java 8.

Чтобы исправить ситуацию:

  1. Убедитесь, что JDK и JRE установлены одной версии и желательно от одного поставщика (например, Oracle).
  2. Проверьте версию Java в консоли:
java -version
javac -version
  1. Если нужно использовать более новую версию, обновите JDK и настройте JAVA_HOME на нужный путь:
export JAVA_HOME=/path/to/jdk11
export PATH=$JAVA_HOME/bin:$PATH
  1. В IntelliJ IDEA можно явно задать версию JDK для проекта: File → Project Structure → Project → Project SDK. Также можно указать target version для компиляции (Project language level или javac -target).
  2. Для простых упражнений (Hello World) можно компилировать и запускать прямо из консоли с одной и той же версией Java.

22 дня назад

Nikolai Gagarinov