本文主要是介绍【JAVA程序CI报错】this version of the Java Runtime only recognizes class file versions up to 52.0,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
原因
由于maven官方在20221124174919升级了spring-boot-maven-plugin插件到3.0版本,而最新的3.0.0版本不被jdk8支持,导致编译打包报错。
报错异常
Caused by: java.lang.UnsupportedClassVersionError: org/springframework/boot/maven/RepackageMojo has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 52.0at 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 org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:386)at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:101)
解决方案
在引入spring-boot-maven-plugin插件的时候,需要指定插件的版本,在项目的pom.xml添加以下配置:
<plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.7.5</version> # 版本<configuration><mainClass>com.test.WebApplication</mainClass> # 启动类的位置</configuration><executions><execution><goals><goal>repackage</goal></goals></execution></executions>
</plugin>
这篇关于【JAVA程序CI报错】this version of the Java Runtime only recognizes class file versions up to 52.0的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!