UnsupportedClassVersionError неподдерживаемый major.minor версии 51.0 не удалось загрузить класс
Возможный дубликат:
Исключение в потоке "main" java.lang.UnsupportedClassVersionError: a (Отказаться от версии Major.minor версии 51.0)
Я разработал веб-приложение на Java, используя jdk 1.7.0,Eclipse IDE (Indigo), и запускаю это приложение на tomcat(apache-tomcat-7.0.23), настроенном в eclipse ide.
Когда я пытался запустить свое приложение через IDE, оно работает нормально, но когда я создал его war и поместил его в папку развертывания apache (webapps) и запустил его из-за пределов IDE, стартовая страница была успешно загружена, но когда я попытался выполнить какую-либо операцию поверх это дает мне ошибку
UnsupportedClassVersionError unsupported major.minor version 51.0 unable to load class bean.myclassname
Я проверил версию Java за пределами Ide JDK 1.7.0, а также переменная среды JAVA_HOME установлена в C:\Program Files\Java\jdk1.7.0_01 .
4 ответа
Ну, по-видимому, он не использует ту же версию Java при внешнем запуске. Внимательно просмотрите сценарии запуска, чтобы найти версию Java для запуска. Вы также должны проверить журналы запуска, чтобы увидеть, указывают ли они, какая версия работает.
В качестве альтернативы, если вам не нужны функции Java 7, вы всегда можете вместо этого изменить настройки компилятора в Eclipse на целевой 1.6.
Несмотря на то, что ваш JDK в Eclipse равен 1,7, вы должны убедиться, что уровень совместимости Eclipse также установлен в 1,7. Вы можете проверить уровень компиляции -> Окно -> Настройки -> Java- Компилятор - уровень компиляции.
Неподдерживаемая большая незначительная ошибка возникает в случаях, когда уровень компиляции не совпадает со временем выполнения.
Переменная среды java_home должна указывать на местоположение правильной версии установочного каталога java, чтобы tomcat начинался с правильной версии. например, если вы создали проект с использованием Java 1.7, то убедитесь, что переменная окружения JAVA_HOME указывает на каталог установки jdk 1.7 на вашем компьютере.
У меня была такая же проблема, когда я развернул войну в Tomcat и запустил, ссылка выдает ошибку. Но указав переменную - JAVA_HOME на jdk 1.7, я решил проблему, так как мой war-файл был построен в среде java 1.7.
Попробуйте добавить следующее в ваш файл eclipse.ini:
-vm
C:\Program Files\Java\jdk1.7.0_01\bin\java.exe
Возможно, вам также придется изменить Dosgi.requiredJavaVersion на 1,7 в том же файле.