在使用单元测试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的主要内容,如果未能解决你的问题,请参考以下文章

在idea中使用@Test注解报错的解决方案

junit单元测试注意的问题

第一节——Junit单元测试

Junit单元测试遇到的initializationerror:method initializationerror not found

如何使用Junit进行单元测试

错误记录Android 单元测试报错 ( ExampleUnitTest.kt: (3, 12): Unresolved reference: junit / Test / assertEqu )