java.lang.UnsupportedClassVersionError: yy/ii: неподдерживаемая версия major.minor 51.0
Вот как произошла ошибка. Теперь я использую Eclipse Indigo, интегрированную с apache tomcat 6.0, а также изменил порт по умолчанию на 9090.
Caused by: java.lang.UnsupportedClassVersionError: yy/ii : Unsupported major.minor version 51.0 (unable to load class yy.ii)
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1851) at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:890)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1354)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
at org.apache.catalina.startup.WebAnnotationSet.loadApplicationServletAnnotations(WebAnnotationSet.java:108)
at org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations(WebAnnotationSet.java:58)
at org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig(ContextConfig.java:297)
at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1068)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4252)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
... 6 more
2 ответа
Похоже, вы компилируете с JDK7, но запускаете Tomcat с JDK6. Так или иначе, вы пытаетесь запустить файлы классов в JVM, которая старше, чем компилятор, который их скомпилировал. Убедитесь, что Tomcat запущен с той же JVM, что и Eclipse.
Ошибка из-за UnsupportedClassVersionError
в org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Причина: java.lang.UnsupportedClassVersionError: yy/ii: неподдерживаемая версия major.minor 51.0 (невозможно загрузить класс yy.ii)
JVM может запускать только файл класса, скомпилированный с использованием той же или более ранней версии Java Compiler . UnsupportedClassVersionError
произойдет, если вы используете более низкую версию JVM для запуска файла класса, скомпилированного с использованием более высокой версии Java Compiler .
Настройте версию компилятора Java (настройка 1)
Версия компилятора Java настраивается в Project Properties ->Java Build Path-->Libraries Tab---> Select "JRE System Library" -->Edit
Все исходники в вашем проекте будут скомпилированы с использованием этой версии компилятора Java.
Настройка версии JVM WTP tomcat runtime s (настройка 2)
Так как вы используете WTP tomcat для запуска проекта, JVM, который используется WTP tomcat, будет запускать скомпилированный класс вашего проекта. Его версия настроена в Servers View --> double click your tomcat server --> Runtime Environment
Убедитесь, что версия JVM времени выполнения (настройка 2) не ниже версии JVM, которая используется для компиляции ваших источников (настройка 1)