java.lang.IllegalArgumentException: неподдерживаемый файл класса, основная версия 59

Я изучаю Spring MVC. Когда я пытаюсь запустить файл JSP, он выдает ошибку HTTP Status 500-Servlet.init() для сервлета Исключение SpringMVC. Детали, которые я получаю, следующие:

javax.servlet.ServletException: Servlet.init() для сервлета SpringMVC вызвало исключение 620) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:502) › org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1132) org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process (AbstractProtocol.java:684) org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1539) org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1495 ) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) org.apache.tomcat.util .threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.base/java.lang.Thread.run(Thread.java:832) Это мой web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <!--1.注册servlet-->
    <servlet>
        <servlet-name>SpringMVC</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--通过初始化参数指定SpringMVC配置文件的位置,进行关联-->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springmvc-servlet.xml</param-value>
        </init-param>
        <!-- 启动顺序,数字越小,启动越早 -->
        <load-on-startup>1</load-on-startup>
    </servlet>

    <!--所有请求都会被springmvc拦截 -->
    <servlet-mapping>
        <servlet-name>SpringMVC</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
</web-app>

Это мой springmvc-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context
       https://www.springframework.org/schema/context/spring-context.xsd
       http://www.springframework.org/schema/mvc
       https://www.springframework.org/schema/mvc/spring-mvc.xsd">

    <!-- 自动扫描包,让指定包下的注解生效,由IOC容器统一管理 -->
    <context:component-scan base-package="com.pke.controller"/>
    <!-- 让Spring MVC不处理静态资源 -->
    <mvc:default-servlet-handler />

    <mvc:annotation-driven />

    <!-- 视图解析器 -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"
          id="internalResourceViewResolver">
        <!-- 前缀 -->
        <property name="prefix" value="/WEB-INF/jsp/" />
        <!-- 后缀 -->
        <property name="suffix" value=".jsp" />
    </bean>
</beans>

Это мой класс HelloController

package com.pke.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class HelloController {
    @RequestMapping("/hello")
    public String sayhello(Model model){

        model.addAttribute("msg","hello!!!!!");
        return "hello";
    }

}

И это исключение, которое я получаю

org.springframework.beans.factory.BeanDefinitionStoreException: не удалось прочитать класс компонента-кандидата: файл [D:\eclipse-workspace\SpringMVC\out\artifacts\springmvc_01_war_exploded\WEB-INF\classes\com\pke\controller\HelloController.class] ; вложенным исключением является org.springframework.core.NestedIOException: ASM ClassReader не удалось проанализировать файл класса - возможно, из-за новой версии файла класса Java, которая еще не поддерживается: файл [D:\eclipse-workspace\SpringMVC\out\artifacts\ springmvc_01_war_exploded\WEB-INF\classes\com\pke\controller\HelloController.class]; вложенным исключением является java.lang.IllegalArgumentException: неподдерживаемый файл класса основной версии 59 в org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.scanCandidateComponents(ClassPathScanningCandidateComponentProvider.java:454) в org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.findCandidateComponents(ClassPathProvider.javaCandidateComponents :316) в org.springframework.context.annotation.ClassPathBeanDefinitionScanner.doScan(ClassPathBeanDefinitionScanner.java:275) в org.springframework.context.annotation.ComponentScanBeanDefinitionParser.parse(ComponentScanBeanDefinitionParser.java:90) в org.springframework.beans.factory. xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:74) в org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1391) в org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1391) nitionParserDelegate.java:1371) в org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:179) в org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultRegisterBeanDefinition) в11RegisterBeanDefinitionDocument(DefaultReaderDefinitionDocument) .springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:96) в org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:513) в org.springframework.xmlbeans.factory.factory. .XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:393)

Я работаю с IDEA 2021.1, Tomcat 8.0.30.


person ke peng    schedule 31.07.2021    source источник
comment
Это не мой ответ на мой вопрос, потому что моя версия jdk — jdk15, и я использую весеннюю версию 5.1.9.   -  person ke peng    schedule 01.08.2021
comment
Вы знаете, как решить этот вопрос по-другому. Благодарность   -  person ke peng    schedule 01.08.2021