在学习黑马的课程时发现使用的是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文件配置依赖注入的相同结果:
总结:最好下载教程对应的资料进行配套学习,版本可能引发许多问题。