Добро пожаловать на Craft‑Bukkit

Всё о Minecraft серверах: гайды, команды, скачивание сборок и полезные советы для администраторов и игроков.

Ошибка «Java version mismatch»: как обновить Java и выбрать правильную версию для сервера

wergio 24.07.2026 11:53 2
Ошибка Java version mismatch: как установить правильную Java для сервера Minecraft 1.21.

Введение: не та Java — не тот сервер

Ошибка «java.lang.UnsupportedClassVersionError» или «has been compiled by a more recent version of Java» появляется при попытке запустить сервер Minecraft на неподходящей версии Java. Современные версии Minecraft (1.18+) требуют Java 17 или новее. Старые (1.16.5 и ниже) требуют Java 8. Запуск сервера 1.20 на Java 8 приведёт к мгновенному крашу. В этом гайде — как установить правильную Java и переключаться между версиями.

Какая версия Java нужна для вашей версии Minecraft

Версия MinecraftТребуемая JavaРекомендуемая Java
1.20.5+ (1.21 и новее)Java 21Java 21 LTS
1.18 — 1.20.4Java 17Java 17 LTS
1.17Java 16Java 17 (совместима)
1.12 — 1.16.5Java 8Java 8 Update 311+
1.7.10 и нижеJava 7Java 8 (совместима)
Важно: Java 17 и Java 21 — это LTS-версии (Long Term Support). Используйте именно их, а не промежуточные версии (Java 18, 19, 20), которые уже не поддерживаются.

Шаг 1: Проверка текущей версии Java

Откройте командную строку (Win+R → cmd) и введите:

java -version

Вы увидите что-то вроде: openjdk version "17.0.9" 2023-10-17 LTS. Если версия ниже требуемой — нужно обновить.

Шаг 2: Установка правильной версии Java

Windows

  1. Скачайте Java с официального сайта Oracle (oracle.com/java) или OpenJDK (adoptium.net).
  2. Выберите версию: Java 21 для новейших серверов, Java 17 для большинства серверов 1.18-1.20.
  3. Установите, следуя инструкциям установщика. Запомните путь установки.
  4. Настройте переменную окружения JAVA_HOME: Панель управления → Система → Дополнительные параметры → Переменные среды → Создать (или изменить) переменную JAVA_HOME со значением пути к папке Java (например, C:Program FilesJavajdk-17).
  5. Добавьте %JAVA_HOME%in в переменную Path.
  6. Перезагрузите компьютер или перезапустите консоль.

Linux (Ubuntu/Debian)

sudo apt update
sudo apt install openjdk-17-jdk-headless  # для Java 17
sudo apt install openjdk-21-jdk-headless  # для Java 21

Шаг 3: Переключение между версиями Java

Если у вас несколько версий Java (например, Java 8 для старых серверов и Java 17 для новых), вы можете указать конкретную версию в скрипте запуска.

Windows (start.bat)

Укажите полный путь к нужной Java:

"C:Program FilesJavajdk-17injava.exe" -Xmx4G -Xms4G -jar server.jar nogui

Linux

Используйте update-alternatives:

sudo update-alternatives --config java

Выберите нужную версию из списка.

Шаг 4: Решение ошибки «UnsupportedClassVersionError»

Если сервер уже запущен, но вы видите эту ошибку при использовании плагинов или модов — значит, плагин скомпилирован для более новой Java, чем та, на которой запущен сервер.

Решение:

  • Обновите Java на сервере до версии, требуемой плагином.
  • Или скачайте более старую версию плагина, скомпилированную для вашей Java.

Типичные ошибки

  • Установили JRE вместо JDK. Для сервера достаточно JRE (Java Runtime Environment). JDK (Java Development Kit) нужен только для разработки плагинов. Но если у вас JDK — это тоже работает.
  • Не изменили PATH. Система продолжает использовать старую Java. Проверьте java -version после установки.
  • Используют 32-битную Java на 64-битной системе. 32-битная Java ограничена 1.5 ГБ памяти. Всегда используйте 64-битную версию.

💡 Совет профи

Используйте менеджер версий Java — SDKMAN! (Linux/Mac) или jabba (Windows). Они позволяют установить несколько версий Java и переключаться между ними одной командой: sdk use java 17.0.9-tem. Это незаменимо, если вы администрируете несколько серверов разных версий Minecraft на одной машине.
← К списку статей

💬 Комментарии (0)

⏳ Все комментарии проходят модерацию

🔒 Войдите, чтобы оставить комментарий

😊 Пока нет комментариев. Будьте первым!