JDK16使用Configuration时报错解决方法

在学习黑马的课程时发现使用的是JDK8,而我自己安装的是JDK16,发生了版本不匹配的类加载错误。

提醒自己以后在看报错时除了看错误类型,还要格外注意Caused by之后的错误原因

看了很多文章,都说把JDK16换成JDK8就好了,那么既然可以降低JDK的版本,我也可以尝试着提升Spring-context的版本。Spring5.0.5会抛出异常:

java.lang.IllegalStateException: Cannot load configuration class

再去maven坐标官网查询相关的依赖版本,得到:
在这里插入图片描述
所以教程中使用的5.0.5相对而言已经比较旧了,尝试使用5.2.19发现依然报错,

Caused by: org.springframework.core.NestedIOException: ASM ClassReader failed to parse class file - probably due to a new Java class file version that isn’t supported yet

到这里可以确定是Spring和JDK版本的不兼容引发的错误,再次换成Spring5.3.13,成功运行,按.xml文件配置依赖注入的相同结果:
在这里插入图片描述
总结:最好下载教程对应的资料进行配套学习,版本可能引发许多问题。