在使用单元测试Junit @Test时,出现错误Caused by: java.lang.UnsupportedClassVersionError
Posted 一宿君
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在使用单元测试Junit @Test时,出现错误Caused by: java.lang.UnsupportedClassVersionError相关的知识,希望对你有一定的参考价值。
解决类文件版本编译和运行不匹配错误Caused by: java.lang.UnsupportedClassVersionError
1、控制台错误提示
Caused by: java.lang.UnsupportedClassVersionError: org/springframework/nativex/NativeListener has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.springframework.util.ClassUtils.forName(ClassUtils.java:284)
at org.springframework.boot.SpringApplication.createSpringFactoriesInstances(SpringApplication.java:446)
... 77 more
找到关键的一行提示:
Caused by: java.lang.UnsupportedClassVersionError: org/springframework/nativex/NativeListener has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
错误原因:
由:Java .lang. unsupportedclassversionerror引起:org/springframework/nativex/NativeListener已经被一个更最新的Java Runtime版本(类文件版本55.0)编译,这个版本的Java Runtime只识别类文件版本52.0
2、解决办法,更改IDEA编译器版本
1、修改Java Compiler(保证和安装的JDK版本一致)
2、修改项目结构及模块中的JDK版本
3、修改SDK版本
4、修改tomcat运行依赖版本
上述这些地方修改完成后,保证版本统一,再次运行测试,基本就不会再报错了!!!
以上是关于在使用单元测试Junit @Test时,出现错误Caused by: java.lang.UnsupportedClassVersionError的主要内容,如果未能解决你的问题,请参考以下文章
Junit单元测试遇到的initializationerror:method initializationerror not found
错误记录Android 单元测试报错 ( ExampleUnitTest.kt: (3, 12): Unresolved reference: junit / Test / assertEqu )