这样的,我的学习要求使用Tomcat配合SpringMVC进行编程,因为spring版本问题需要调低jdk版本到jdk1.7,但是调整完毕后,仍旧出现了jdk1.8的问题



证明用的绝对是jdk1.7
这是报错信息:
02-Nov-2021 21:17:12.435 严重 [RMI TCP Connection(5)-127.0.0.1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: 无法启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Smvc_5_war_exploded]]at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:753)at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:727)at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:695)at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1775)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:291)at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:483)at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:291)at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)at com.sun.jmx.remote.security.MBeanServerAccessController.invoke(MBeanServerAccessController.java:468)at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1487)at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:97)at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1328)at java.security.AccessController.doPrivileged(Native Method)at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1427)at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:848)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)at sun.rmi.transport.Transport$2.run(Transport.java:202)at sun.rmi.transport.Transport$2.run(Transport.java:199)at java.security.AccessController.doPrivileged(Native Method)at sun.rmi.transport.Transport.serviceCall(Transport.java:198)at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:567)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.access$400(TCPTransport.java:619)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(TCPTransport.java:684)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(TCPTransport.java:681)at java.security.AccessController.doPrivileged(Native Method)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:681)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)at java.lang.Thread.run(Thread.java:745)Caused by: java.lang.UnsupportedClassVersionError: org/springframework/web/SpringServletContainerInitializer : Unsupported major.minor version 52.0 (无法载入的类 [org.springframework.web.SpringServletContainerInitializer])at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2487)at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:876)at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1379)at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1223)at java.lang.Class.forName0(Native Method)at java.lang.Class.forName(Class.java:278)at org.apache.catalina.startup.WebappServiceLoader.loadServices(WebappServiceLoader.java:232)at org.apache.catalina.startup.WebappServiceLoader.load(WebappServiceLoader.java:203)at org.apache.catalina.startup.ContextConfig.processServletContainerInitializers(ContextConfig.java:1587)at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1088)at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:779)at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:299)at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5130)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)02-Nov-2021 21:17:12.443 严重 [RMI TCP Connection(5)-127.0.0.1] org.apache.tomcat.util.modeler.BaseModelMBean.invoke Exception invoking method manageApp
java.lang.IllegalStateException: 启动子级时出错at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:757)at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:727)at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:695)at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1775)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:291)at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:483)at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:291)at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)at com.sun.jmx.remote.security.MBeanServerAccessController.invoke(MBeanServerAccessController.java:468)at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1487)at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:97)at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1328)at java.security.AccessController.doPrivileged(Native Method)at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1427)at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:848)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)at sun.rmi.transport.Transport$2.run(Transport.java:202)at sun.rmi.transport.Transport$2.run(Transport.java:199)at java.security.AccessController.doPrivileged(Native Method)at sun.rmi.transport.Transport.serviceCall(Transport.java:198)at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:567)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.access$400(TCPTransport.java:619)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(TCPTransport.java:684)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(TCPTransport.java:681)at java.security.AccessController.doPrivileged(Native Method)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:681)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)at java.lang.Thread.run(Thread.java:745)Caused by: org.apache.catalina.LifecycleException: 无法启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Smvc_5_war_exploded]]at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:753)Caused by: java.lang.UnsupportedClassVersionError: org/springframework/web/SpringServletContainerInitializer : Unsupported major.minor version 52.0 (无法载入的类 [org.springframework.web.SpringServletContainerInitializer])at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2487)at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:876)at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1379)at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1223)at java.lang.Class.forName0(Native Method)at java.lang.Class.forName(Class.java:278)at org.apache.catalina.startup.WebappServiceLoader.loadServices(WebappServiceLoader.java:232)at org.apache.catalina.startup.WebappServiceLoader.load(WebappServiceLoader.java:203)at org.apache.catalina.startup.ContextConfig.processServletContainerInitializers(ContextConfig.java:1587)at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1088)at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:779)at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:299)at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5130)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)02-Nov-2021 21:17:12.468 严重 [RMI TCP Connection(5)-127.0.0.1] org.apache.tomcat.util.modeler.BaseModelMBean.invoke Exception invoking method createStandardContext
javax.management.RuntimeOperationsException: Exception invoking method manageAppat org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:483)at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:291)at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)at com.sun.jmx.remote.security.MBeanServerAccessController.invoke(MBeanServerAccessController.java:468)at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1487)at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:97)at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1328)at java.security.AccessController.doPrivileged(Native Method)at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1427)at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:848)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)at sun.rmi.transport.Transport$2.run(Transport.java:202)at sun.rmi.transport.Transport$2.run(Transport.java:199)at java.security.AccessController.doPrivileged(Native Method)at sun.rmi.transport.Transport.serviceCall(Transport.java:198)at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:567)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.access$400(TCPTransport.java:619)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(TCPTransport.java:684)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(TCPTransport.java:681)at java.security.AccessController.doPrivileged(Native Method)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:681)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)at java.lang.Thread.run(Thread.java:745)Caused by: java.lang.IllegalStateException: 启动子级时出错at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:757)at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:727)at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:695)at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1775)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:291)[2021-11-02 09:17:12,502] Artifact Smvc_5:war exploded: Error during artifact deployment. See server log for details.
Caused by: org.apache.catalina.LifecycleException: 无法启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Smvc_5_war_exploded]]at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:753)Caused by: java.lang.UnsupportedClassVersionError: org/springframework/web/SpringServletContainerInitializer : Unsupported major.minor version 52.0 (无法载入的类 [org.springframework.web.SpringServletContainerInitializer])at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2487)at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:876)at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1379)at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1223)at java.lang.Class.forName0(Native Method)at java.lang.Class.forName(Class.java:278)at org.apache.catalina.startup.WebappServiceLoader.loadServices(WebappServiceLoader.java:232)at org.apache.catalina.startup.WebappServiceLoader.load(WebappServiceLoader.java:203)at org.apache.catalina.startup.ContextConfig.processServletContainerInitializers(ContextConfig.java:1587)at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1088)at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:779)at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:299)at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5130)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)我查询的各种资料都显示'Unsupported major.minor version 52.0'是由于jdk为1.8导致的
你项目编译的版本和运行的版本不一致
spring版本低是可以升级spring版本的,更换jdk版本太麻烦了。
简单处理:重新创建一个项目,把里面的文件拷贝到新项目中。