Подтвердить что ты не робот

Java.lang.UnsupportedClassVersionError: Unsupported major.minor version 51.0 (невозможно загрузить класс frontend.listener.StartupListener)

Возможный дубликат:
неподдерживаемая основная .minor версия 51.0

У меня есть eclipse индиго и tomcat 7.0.29. И еще Serlvets не может быть загружен! У меня нет другого JDK или JRE, чем у 1,7!

  • Уровень компиляции 1.7
  • JAVA_HOME указывает на JDK 1.7
  • JAVA_JRE указывает на JRE 1.7
  • путь сборки содержит JDK 1.7
  • Java Facet 1.7

.. но все еще Неподдерживаемый major.minor version 51.0

4b9b3361

Ответ 1

Каков ваш результат, когда вы делаете java -version? Это скажет вам, какая версия работает JVM.

Ошибка Unsupported major.minor версии 51.0 может означать:

  • На вашем сервере установлена ​​более низкая версия Java, а другая - для компиляции вашего сервлета и наоборот

В любом случае удалите все JVM-процессы, включая JDK, и загрузите последнюю версию и переустановите. Это должно исправить любую ошибку Unsupported major.minor, поскольку у вас будет самая последняя JRE и JDK (возможно, даже более новая, чем та, которая использовалась для компиляции сервлета)

Смотрите: http://www.java.com/en/download/manual.jsp (7 Обновление 25)

и здесь: http://www.oracle.com/technetwork/java/javase/downloads/index.html (платформа Java (JDK) 7u25)

для последней версии JRE и JDK соответственно.

EDIT:

Скорее всего, ваш код был написан на Java7, но, возможно, это было сделано с использованием Java7update4, и ваша система запускает Java7update3. Таким образом, обе они являются фактически одной и той же основной версией, но незначительные версии отличаются. Только меньшая версия обратно совместима с нижней младшей версией.

Изменить 2: Если на вашем компьютере установлено более одного jdk. вы должны проверить, что Apache Tomcat использует тот же (jre), с которым вы компилируете свои программы. Если вы установили новый jdk после установки apache, он обычно не будет выбирать новую версию.