草庐IT

SpringBoot启动异常之Exception in thread “main“ java.lang.UnsupportedClassVersionError

棒棒糖的糖不含糖 2023-12-27 原文

异常提示:Exception in thread "main" java.lang.UnsupportedClassVersionError: org/springframework/boot/SpringApplication 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.0

 一、完整错误报文(两种)

1.1 启动异常之UnsupportedClassVersionError

Exception in thread "main" java.lang.UnsupportedClassVersionError: 
org/springframework/boot/SpringApplication 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.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
	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:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	at com.handlefile.Application.main(Application.java:10)

1.2 启动异常之启动类无法访问

Error:(3, 32) java: 无法访问org.springframework.boot.SpringApplication
  错误的类文件: /E:/ideaMaven/repMaven/org/springframework/boot/spring-boot/
3.0.1/spring-boot-3.0.1.jar!/org/springframework/boot/SpringApplication.class
    类文件具有错误的版本 61.0, 应为 52.0
    请删除该文件或确保该文件位于正确的类路径子目录中。

二、错误原因 

 SpringBoot 与 JDK 版本冲突:新建项目时,idea 会默认选择更高的 SpringBoot 版本,但>3.0SpringBoot 的版本暂不支持 JDK1.8,所以会出现启动报错

 

一般来说高JDK版本能向下兼容低版本的springboot版本。

建议在springboot 2.5.x及其之前使用JDK8,之后的springboot版本使用JDK11即可

三、解决方案

在pom.xml文件中修改SpringBoot版本或JDK版本

 四、简要介绍SpringBoot版本与JDK版本对应关系

SpringBoot版本JDK最低版本SpringBoot官网证据
1.0.0.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.0.1.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.0.2.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.0.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.1.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.2.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.3.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.4.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.5.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.6.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.7.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.8.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.9.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.10.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.11.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.1.12.RELEASE1.6Regardless, you will need Java SDK v1.6 or higher.
1.2.0.RELEASE1.6Spring Boot 1.2.0.RELEASE requires Java 6 and Spring Framework 4.1.3 or above.
1.2.1.RELEASE1.6Spring Boot 1.2.1.RELEASE requires Java 6 and Spring Framework 4.1.3 or above.
1.2.2.RELEASE1.7Spring Boot 1.2.2.RELEASE requires Java 7 and Spring Framework 4.1.3 or above.
1.2.3.RELEASE1.7Spring Boot 1.2.3.RELEASE requires Java 7 and Spring Framework 4.1.5 or above.
1.2.4.RELEASE1.7Spring Boot 1.2.4.RELEASE requires Java 7 and Spring Framework 4.1.5 or above.
1.2.5.RELEASE1.7Spring Boot 1.2.5.RELEASE requires Java 7 and Spring Framework 4.1.5 or above.
1.2.6.RELEASE1.7Spring Boot 1.2.6.RELEASE requires Java 7 and Spring Framework 4.1.5 or above.
1.2.7.RELEASE1.7Spring Boot 1.2.7.RELEASE requires Java 7 and Spring Framework 4.1.5 or above.
1.2.8.RELEASE1.7Spring Boot 1.2.8.RELEASE requires Java 7 and Spring Framework 4.1.5 or above.
1.3.0.RELEASE1.7Spring Boot 1.3.0.RELEASE requires Java 7 and Spring Framework 4.1.5 or above.
1.3.1.RELEASE1.7Spring Boot 1.3.0.RELEASE requires Java 7 and Spring Framework 4.1.5 or above.
1.3.2.RELEASE1.7

Spring Boot 1.3.0.RELEASE requires Java 7 and Spring Framework 4.1.5 or above.

1.3.3.RELEASE1.7Spring Boot 1.3.0.RELEASE requires Java 7 and Spring Framework 4.1.5 or above.

1.3.4.RELEASE

1.7

Spring Boot 1.3.4.RELEASE requires Java 7 and Spring Framework 4.2.6.RELEASE or above.

1.3.5.RELEASE1.7Spring Boot 1.3.5.RELEASE requires Java 7 and Spring Framework 4.2.6.RELEASE or above.
1.3.6.RELEASE1.7Spring Boot 1.3.6.RELEASE requires Java 7 and Spring Framework 4.2.7.RELEASE or above.
1.3.7.RELEASE1.7Spring Boot 1.3.7.RELEASE requires Java 7 and Spring Framework 4.2.7.RELEASE or above.
1.3.8.RELEASE1.7Spring Boot 1.3.8.RELEASE requires Java 7 and Spring Framework 4.2.8.RELEASE or above.
1.4.0.RELEASE1.7Spring Boot 1.4.0.RELEASE requires Java 7 and Spring Framework 4.3.2.RELEASE or above.
1.4.1.RELEASE1.7Spring Boot 1.4.1.RELEASE requires Java 7 and Spring Framework 4.3.3.RELEASE or above.
1.4.2.RELEASE1.7Spring Boot 1.4.2.RELEASE requires Java 7 and Spring Framework 4.3.4.RELEASE or above.
1.4.3.RELEASE1.7Spring Boot 1.4.3.RELEASE requires Java 7 and Spring Framework 4.3.5.RELEASE or above.
1.4.4.RELEASE1.7Spring Boot 1.4.4.RELEASE requires Java 7 and Spring Framework 4.3.6.RELEASE or above.
1.4.5.RELEASE1.7Spring Boot 1.4.5.RELEASE requires Java 7 and Spring Framework 4.3.7.RELEASE or above.
1.4.6.RELEASE1.7Spring Boot 1.4.6.RELEASE requires Java 7 and Spring Framework 4.3.8.RELEASE or above.
1.4.7.RELEASE1.7Spring Boot 1.4.7.RELEASE requires Java 7 and Spring Framework 4.3.9.RELEASE or above.
1.5.0.RELEASE1.7Spring Boot 1.5.0.RELEASE requires Java 7 and Spring Framework 4.3.6.RELEASE or above.
1.5.1.RELEASE1.7Spring Boot 1.5.1.RELEASE requires Java 7 and Spring Framework 4.3.6.RELEASE or above.
1.5.2.RELEASE1.7Spring Boot 1.5.2.RELEASE requires Java 7 and Spring Framework 4.3.7.RELEASE or above.
1.5.3.RELEASE1.7Spring Boot 1.5.3.RELEASE requires Java 7 and Spring Framework 4.3.8.RELEASE or above.
1.5.4.RELEASE1.7Spring Boot 1.5.4.RELEASE requires Java 7 and Spring Framework 4.3.9.RELEASE or above.
1.5.5.RELEASE1.7Spring Boot 1.5.5.RELEASE requires Java 7 and Spring Framework 4.3.10.RELEASE or above.
1.5.6.RELEASE1.7Spring Boot 1.5.6.RELEASE requires Java 7 and Spring Framework 4.3.10.RELEASE or above.
1.5.7.RELEASE1.7Spring Boot 1.5.7.RELEASE requires Java 7 and Spring Framework 4.3.11.RELEASE or above.
1.5.8.RELEASE1.7Spring Boot 1.5.8.RELEASE requires Java 7 and Spring Framework 4.3.12.RELEASE or above.
1.5.9.RELEASE1.7Spring Boot 1.5.9.RELEASE requires Java 7 and Spring Framework 4.3.13.RELEASE or above.
1.5.10.RELEASE1.7Spring Boot 1.5.10.RELEASE requires Java 7 and Spring Framework 4.3.14.RELEASE or above.
1.5.11.RELEASE1.7Spring Boot 1.5.11.RELEASE requires Java 7 and Spring Framework 4.3.15.RELEASE or above.
1.5.12.RELEASE1.7Spring Boot 1.5.12.RELEASE requires Java 7 and Spring Framework 4.3.16.RELEASE or above.
1.5.13.RELEASE1.7Spring Boot 1.5.13.RELEASE requires Java 7 and Spring Framework 4.3.17.RELEASE or above.
1.5.14.RELEASE1.7Spring Boot 1.5.14.RELEASE requires Java 7 and Spring Framework 4.3.18.RELEASE or above.
1.5.15.RELEASE1.7Spring Boot 1.5.15.RELEASE requires Java 7 and Spring Framework 4.3.18.RELEASE or above.
1.5.16.RELEASE1.7Spring Boot 1.5.16.RELEASE requires Java 7 and Spring Framework 4.3.19.RELEASE or above.
1.5.17.RELEASE1.7Spring Boot 1.5.17.RELEASE requires Java 7 and Spring Framework 4.3.20.RELEASE or above.
1.5.18.RELEASE1.7Spring Boot 1.5.18.RELEASE requires Java 7 and Spring Framework 4.3.21.RELEASE or above.
1.5.19.RELEASE1.7Spring Boot 1.5.19.RELEASE requires Java 7 and Spring Framework 4.3.22.RELEASE or above.
1.5.20.RELEASE1.7Spring Boot 1.5.20.RELEASE requires Java 7 and Spring Framework 4.3.23.RELEASE or above.
1.5.21.RELEASE1.7Spring Boot 1.5.21.RELEASE requires Java 7 and Spring Framework 4.3.24.RELEASE or above.
2.0.0.RELEASE1.8Spring Boot 2.0.0.RELEASE requires Java 8 or 9 and Spring Framework 5.0.4.RELEASE or above.
2.0.1.RELEASE1.8Spring Boot 2.0.1.RELEASE requires Java 8 or 9 and Spring Framework 5.0.5.RELEASE or above.
2.0.2.RELEASE1.8Spring Boot 2.0.2.RELEASE requires Java 8 or 9 and Spring Framework 5.0.6.RELEASE or above.
2.0.3.RELEASE1.8Spring Boot 2.0.3.RELEASE requires Java 8 or 9 and Spring Framework 5.0.7.RELEASE or above.
2.0.4.RELEASE1.8Spring Boot 2.0.4.RELEASE requires Java 8 or 9 and Spring Framework 5.0.8.RELEASE or above.
2.0.5.RELEASE1.8Spring Boot 2.0.5.RELEASE requires Java 8 or 9 and Spring Framework 5.0.9.RELEASE or above.
2.0.6.RELEASE1.8Spring Boot 2.0.6.RELEASE requires Java 8 or 9 and Spring Framework 5.0.10.RELEASE or above.
2.0.7.RELEASE1.8Spring Boot 2.0.7.RELEASE requires Java 8 or 9 and Spring Framework 5.0.11.RELEASE or above.
2.0.8.RELEASE1.8Spring Boot 2.0.8.RELEASE requires Java 8 or 9 and Spring Framework 5.0.12.RELEASE or above.
2.0.9.RELEASE1.8Spring Boot 2.0.9.RELEASE requires Java 8 or 9 and Spring Framework 5.0.13.RELEASE or above.
2.1.0.RELEASE1.8Spring Boot 2.1.0.RELEASE requires Java 8 or 9 and Spring Framework 5.1.2.RELEASE or above.
2.1.1.RELEASE1.8Spring Boot 2.1.1.RELEASE requires Java 8 and is compatible up to Java 11 (included). Spring Framework 5.1.3.RELEASE or above is also required.
2.1.2.RELEASE1.8Spring Boot 2.1.2.RELEASE requires Java 8 and is compatible up to Java 11 (included). Spring Framework 5.1.4.RELEASE or above is also required.
2.1.3.RELEASE1.8Spring Boot 2.1.3.RELEASE requires Java 8 and is compatible up to Java 11 (included). Spring Framework 5.1.5.RELEASE or above is also required.
2.1.4.RELEASE1.8Spring Boot 2.1.4.RELEASE requires Java 8 and is compatible up to Java 11 (included). Spring Framework 5.1.6.RELEASE or above is also required.
2.1.5.RELEASE1.8Spring Boot 2.1.5.RELEASE requires Java 8 and is compatible up to Java 11 (included). Spring Framework 5.1.7.RELEASE or above is also required.
2.1.6.RELEASE1.8Spring Boot 2.1.6.RELEASE requires Java 8 and is compatible up to Java 11 (included). Spring Framework 5.1.8.RELEASE or above is also required.
未完,待续...

有关SpringBoot启动异常之Exception in thread “main“ java.lang.UnsupportedClassVersionError的更多相关文章

  1. java - 等价于 Java 中的 Ruby Hash - 2

    我真的很习惯使用Ruby编写以下代码:my_hash={}my_hash['test']=1Java中对应的数据结构是什么? 最佳答案 HashMapmap=newHashMap();map.put("test",1);我假设? 关于java-等价于Java中的RubyHash,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/22737685/

  2. ruby-on-rails - 启动 Rails 服务器时 ImageMagick 的警告 - 2

    最近,当我启动我的Rails服务器时,我收到了一长串警告。虽然它不影响我的应用程序,但我想知道如何解决这些警告。我的估计是imagemagick以某种方式被调用了两次?当我在警告前后检查我的git日志时。我想知道如何解决这个问题。-bcrypt-ruby(3.1.2)-better_errors(1.0.1)+bcrypt(3.1.7)+bcrypt-ruby(3.1.5)-bcrypt(>=3.1.3)+better_errors(1.1.0)bcrypt和imagemagick有关系吗?/Users/rbchris/.rbenv/versions/2.0.0-p247/lib/ru

  3. ruby-on-rails - Rails - 乐观锁定总是触发 StaleObjectError 异常 - 2

    我正在学习Rails,并阅读了关于乐观锁的内容。我已将类型为integer的lock_version列添加到我的articles表中。但现在每当我第一次尝试更新记录时,我都会收到StaleObjectError异常。这是我的迁移:classAddLockVersionToArticle当我尝试通过Rails控制台更新文章时:article=Article.first=>#我这样做:article.title="newtitle"article.save我明白了:(0.3ms)begintransaction(0.3ms)UPDATE"articles"SET"title"='dwdwd

  4. ruby - #之间? Cooper 的 *Beginning Ruby* 中的错误或异常 - 2

    在Cooper的书BeginningRuby中,第166页有一个我无法重现的示例。classSongincludeComparableattr_accessor:lengthdef(other)@lengthother.lengthenddefinitialize(song_name,length)@song_name=song_name@length=lengthendenda=Song.new('Rockaroundtheclock',143)b=Song.new('BohemianRhapsody',544)c=Song.new('MinuteWaltz',60)a.betwee

  5. ruby - 在 Ruby 中重新分配常量时抛出异常? - 2

    我早就知道Ruby中的“常量”(即大写的变量名)不是真正常量。与其他编程语言一样,对对象的引用是唯一存储在变量/常量中的东西。(侧边栏:Ruby确实具有“卡住”引用对象不被修改的功能,据我所知,许多其他语言都没有提供这种功能。)所以这是我的问题:当您将一个值重新分配给常量时,您会收到如下警告:>>FOO='bar'=>"bar">>FOO='baz'(irb):2:warning:alreadyinitializedconstantFOO=>"baz"有没有办法强制Ruby抛出异常而不是打印警告?很难弄清楚为什么有时会发生重新分配。 最佳答案

  6. java - 从 JRuby 调用 Java 类的问题 - 2

    我正在尝试使用boilerpipe来自JRuby。我看过guide从JRuby调用Java,并成功地将它与另一个Java包一起使用,但无法弄清楚为什么同样的东西不能用于boilerpipe。我正在尝试基本上从JRuby中执行与此Java等效的操作:URLurl=newURL("http://www.example.com/some-location/index.html");Stringtext=ArticleExtractor.INSTANCE.getText(url);在JRuby中试过这个:require'java'url=java.net.URL.new("http://www

  7. java - 我的模型类或其他类中应该有逻辑吗 - 2

    我只想对我一直在思考的这个问题有其他意见,例如我有classuser_controller和classuserclassUserattr_accessor:name,:usernameendclassUserController//dosomethingaboutanythingaboutusersend问题是我的User类中是否应该有逻辑user=User.newuser.do_something(user1)oritshouldbeuser_controller=UserController.newuser_controller.do_something(user1,user2)我

  8. java - 什么相当于 ruby​​ 的 rack 或 python 的 Java wsgi? - 2

    什么是ruby​​的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht

  9. UE4 源码阅读:从引擎启动到Receive Begin Play - 2

    一、引擎主循环UE版本:4.27一、引擎主循环的位置:Launch.cpp:GuardedMain函数二、、GuardedMain函数执行逻辑:1、EnginePreInit:加载大多数模块int32ErrorLevel=EnginePreInit(CmdLine);PreInit模块加载顺序:模块加载过程:(1)注册模块中定义的UObject,同时为每个类构造一个类默认对象(CDO,记录类的默认状态,作为模板用于子类实例创建)(2)调用模块的StartUpModule方法2、FEngineLoop::Init()1、检查Engine的配置文件找出使用了哪一个GameEngine类(UGame

  10. Observability:从零开始创建 Java 微服务并监控它 (二) - 2

    这篇文章是继上一篇文章“Observability:从零开始创建Java微服务并监控它(一)”的续篇。在上一篇文章中,我们讲述了如何创建一个Javaweb应用,并使用Filebeat来收集应用所生成的日志。在今天的文章中,我来详述如何收集应用的指标,使用APM来监控应用并监督web服务的在线情况。源码可以在地址 https://github.com/liu-xiao-guo/java_observability 进行下载。摄入指标指标被视为可以随时更改的时间点值。当前请求的数量可以改变任何毫秒。你可能有1000个请求的峰值,然后一切都回到一个请求。这也意味着这些指标可能不准确,你还想提取最小/

随机推荐