Вступить в клуб →
лёгкаявопросJVM в контейнере, сборка и зависимости

Контейнер падает на старте с UnsupportedClassVersionError

Разработчик собрал сервис локально на JDK 21 и использовал в коде record и сопоставление с образцом в switch. Образ для запуска основан на eclipse-temurin:17-jre. Контейнер падает сразу: UnsupportedClassVersionError: ... class file version 65.0, this version of the Java Runtime only recognizes class file versions up to 61.0.

Как исправить и не допустить повторения?

  • Выровнять версию Java в сборке и в образе и зафиксировать её в конфигурации сборки
  • Перезапустить контейнер — ошибка возникает только при первом старте
  • Удалить из кода record, и приложение запустится на любой версии
  • Добавить флаг -Xverify:none при запуске JVM

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела