Springboot启动报错[ main] o.s.boot.SpringApplication: Application run failed(佷有可能是版本问题)

Springboot启动报错[ main] o.s.boot.SpringApplication: Application run failed(佷有可能是版本问题)前言:本人小白一枚,最近在自学JAVA时遇到了一个小问题,在网上求解无果后,自己找到了原因,这里跟大家分享一下。开发环境:Win10;IntelliJIDEA2021.3.2版本信息:Java\jdk-17.0.2;apache-maven-3.8.4-bin;springboot2.3.4编程目的:本人之前对JAVA一窍不通,最近在自学JAVA时想要用JAVA,Springboot和maven搭建一个最基础的helloworld程序。报错信息:ERROR后面显示“o.s.boot.

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前言:本人小白一枚,最近在自学JAVA时遇到了一个小问题,在网上求解无果后,自己找到了原因,这里跟大家分享一下。

开发环境:Win10;IntelliJ IDEA 2021.3.2

版本信息:Java\jdk-17.0.2;apache-maven-3.8.4-bin;springboot2.3.4

编程目的:本人之前对JAVA一窍不通,最近在自学JAVA时想要用JAVA,Springboot和maven搭建一个最基础的helloworld程序。

报错信息:Springboot启动报错[ main] o.s.boot.SpringApplication: Application run failed(佷有可能是版本问题)

  ERROR后面显示“o.s.boot.SpringApplication : Application run failed”。但这个只是现象,往下拖去看”caused by”部分,有几行很长的信息,别嫌烦,往后拖看看,或者更快捷一点选中两行复制出来看,这样不用一点点拖。会看到如下信息:“Unsupported class file major version 61”

   这个提示信息其实已经非常明显了。就是告诉你版本不支持,在一番调研之后,我发现根本原因是我的JDK版本过高了没法适配springboot2.3.4。因此我卸载掉原来的jdk-17.0.2版本后下载了一个jdk-8u291-windows-x64的历史版本,然后别忘了配置PATH环境变量。然后再次进入IDEA运行。

  此处有一个小坑,就是如果你之前用的JDK17新建以及运行项目,在你更换版本之后你原来的项目仍旧是JDK17的,不支持你新安装的版本的,因此要改一下编译器设置,以及再次新建一个项目(还有一些配置需要改,这个就不详细说了,直接网上搜索其他帖子讲的更详细),到了项目代码中吼这里如果你直接把原来的项目代码copy过来,会发现仍旧运行不了,首先你去pox.xml中去找以下部分的代码:

<properties>
    <maven.compiler.source>17</maven.compiler.source>
    <maven.compiler.target>17</maven.compiler.target>
</properties>

这个中间的17就代表你的当前项目中所用到的编译器是17版本的,因此你要把上述代码中的17改为8(或者你新安装的其他版本)。

  再次运行程序,不出意外的话,就可以跑起来啦。

  pps:在我查找解决办法的时候,试过了”在@SpringBootApplication中排除其注入 
@SpringBootApplication(exclude={DataSourceAutoConfiguration.class,HibernateJpaAutoConfiguration.class})”这一方法,但是至少在我的环境下是不管用的。因此当遇到问题的时候不要盲目尝试,要多读一读报错信息说不定自己就能找到答案。

以上。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195826.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • BatchShell软件—-Xshell与Ansible结合

    BatchShell软件—-Xshell与Ansible结合

    2021年6月3日
    105
  • [灵魂拷问]MySQL面试高频100问(工程师方向)

    [灵魂拷问]MySQL面试高频100问(工程师方向)黑客技术点击右侧关注,了解黑客的世界!Java开发进阶点击右侧关注,掌握进阶之路!Python开发点击右侧关注,探讨技术话题!作者丨呼延十排版丨Java团长juejin….

    2025年12月12日
    3
  • 跨域是什么问题_如何实现跨域

    跨域是什么问题_如何实现跨域解决好跨域,让我们愉快的开发吧

    2025年7月14日
    2
  • chrome加载慢_多线程有什么用

    chrome加载慢_多线程有什么用谷歌浏览器采用的是单线程下载,想要提高下载速度,就得采用多线程的下载方式,Chrome默认还是单线程下载,如果想要谷歌多线程下载,就要手动开启,下面听MacW小编娓娓道来,介绍如何开启Chrome多线程下载!先来看看开启前的下载速度,(同一个文件)看到了吧!默认情况下,只有左右,远没有到达带宽的上限,接下来跟着小编一起开启这个隐藏的功能,国产Chrome内核的浏览器通通适用,包括前段时间推送的新版Edge也可以。chrome://flags/#enable-parallel-downloading

    2022年10月8日
    3
  • dropna()删除缺失值_pandas的dropna方法

    dropna()删除缺失值_pandas的dropna方法约定:importpandasaspdimportnumpyasnpfromnumpyimportnanasNaN滤除缺失数据pandas的设计目标之一就是使得处理缺失数据的任务更加轻松些。pandas使用NaN作为缺失数据的标记。使用dropna使得滤除缺失数据更加得心应手。一、处理Series对象通过dropna(…

    2022年9月18日
    5
  • AMM和ASMM切换

    AMM和ASMM切换现在的Oracle正在往智能化方向发展。如果我们现在找一些8i/9i时代的Oracle书籍,怎么样配置合适的数据库各内存池大小是非常重要的话题。但是进入10g之后,自动内存池调节成为一个重要Oracle特性。在10g时,Oracle推出了ASMM(AutomaticSharedMemoryManagement),实现了OracleSGA和PGA内部结构的自调节。进入…

    2022年5月29日
    28

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号