Bug 解决 | 后端项目无法正常启动,或依赖服务连接失败

news2024/9/20 16:37:40

目录

1、版本问题

2、依赖项问题


明明拷贝的代码,为什么别人行,我启动就报错?

这篇文章我就理一下最最常见的项目启动报错的两种原因!

1、版本问题

比如明明项目的 Java 版本是 8,你非得拿 5 跑?那不是完犊子了吗?

比如报错:java: -source 1.5 中不支持 diamond 运算符。

再比如拿高本版来跑,理论上好像没问题,会兼容?但是实际上还是不稳,咱们整个一样的版本是最好的!

不过很多同学拿高版本来跑也是无心之举,idea 默认带了高本版(比如 java 17),或者自己为了实验性安装了高版本,所以项目一跑就报了这个错:无效的源发行版:17

在 IntelliJ IDEA 中修改 Java 编译版本可以通过以下步骤完成:

1)打开项目设置:

        在 IntelliJ IDEA 中打开你的项目。

        点击顶部菜单栏中的 "File" -> "Project Structure"(或者使用快捷键 Ctrl + Alt + Shift + S)。

2)选择项目模块:

        在弹出的窗口中,选择左侧栏中的 "Project"。

        在右侧的 "Project SDK" 下拉菜单中选择你想要的 Java SDK 版本。

3)更改项目语言级别和源代码兼容性:

        在弹出窗口左侧栏的 "Modules" 选项下,选择你的模块。

        在右侧窗格中,选择 "Sources" 标签。

        在 "Language level" 下拉菜单中选择你想要的 Java 版本。

        确保 "Target bytecode version"(目标字节码版本)与你的目标 Java 版本匹配。

4)应用和保存更改:

        点击 "Apply" 按钮应用更改。

        点击 "OK" 保存并退出项目设置对话框。

通过以上步骤,在 IntelliJ IDEA 中你可以很容易地修改项目的 Java 编译版本。确保选择的 SDK 版本和语言级别与你的项目要求一致,以便正确编译和运行项目代码。

这样操作后,还报错,那么可能是 maven 的问题了,pom 文件里面的版本配置不对。

这个版本修改后,记得要刷新 maven!

对了,说到 maven 可能有些同学发现自己的 idea 右侧 没有 maven 菜单,此时你需要右键点击项目里面的 pom.xml 文件选择 add as maven project

还有同学 maven install 的时候会有报错,比如 无效的标记:--release

这种可能就是因为 maven 版本和 java 版本不兼容。

升级下 maven 版本,对于 java8 来说,强烈建议使用Maven 3.6.x 版本,因为 Maven 3.6.x 系列版本是专门支持 JDK 8 的。

2、依赖项问题

除了 java 本身或者 maven 的问题之外,同学们可能还会遇到 redis 报错或者 mysql 报错这些项目依赖的组件导致的问题。

1)比如项目启动报 redis 相关的错:

        Unable to connct to Redis server: localhost/127.0.0.1:6379

那么可能是 redis 配置有问题, 比如你给 redis 设置了密码,那么配置文件里面就需要配置密码。

2)比如报 mysql 相关的错:

        Caused by:org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection;nested exception is java.sql.SQLException: Access denied for user 'root'@'localhost' (using password:YES)?

确认下配置里面密码是否填写正确,然后账号是否有对应的查询等权限。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1973612.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python爬虫预备知识三-序列化和反序列化

序列化和反序列化 序列化是为了将内存中的数据保存在磁盘上或者用于传输,实现程序状态的保存和共享。反序列化反之。 序列化后的变量再被反序列化回来之后,两者之间已经没有任何关系。 序列化后的文件是在不同程序或者说不同语言之间传递数据的关键方…

开发助手专业版,有反编译等多种功能

软件介绍 开发助手能够用来快速调试应用以及查看手机软硬件相关信息,包括:快速打开或关闭开发者选项中的选项。 将原来几十秒的操作缩短为一次点击。包括显示布局边界,显示 GPU 过度绘制。显示布局更新。强制 GPU 渲染 显示 GPU 视图更新&a…

第15课 Scratch少儿编程 入门篇:师生问候

师生问候 故事背景: 魔法学院的期末考核刚刚考完,魔法老师在教室里碰到小明,老师问小明考的怎么样? 程序原理: 找一个教室的背景,小精灵角色和魔法师的角色,将魔法师的角色造型左右反转&…

Java与Python谁更适合后端开发?

在软件开发的世界里,选择合适的编程语言就像为建筑选择合适的材料一样重要。 对于后端开发而言,Java和Python都是流行的选择,但它们各自拥有独特的优势和劣势,“谁更适合”就成为一个被议论的话题。 事实上,并不存在…

调用IP实现数据加速

前言 在数字系统设计中,提升数据处理速度和效率是关键目标。本实验着眼于利用双端口RAM和异步FIFO对IP核ROM中的数据进行加速处理,通过这两种硬件组件的有效结合来优化数据访问和传输。双端口RAM允许同时进行读写操作,提高数据处理的并行性和…

中央空调常用风口的分类

中央空调常用风口的分类中央空调常用的风口类型有七类,包括百叶风口、散流器、喷口、旋流风口、条缝风口、格栅风口和专用风口。详细分类如下: 1)百叶风口:单层百叶风口、双层百叶风口、连动百叶风口、固定斜百叶风口、地面固定斜…

How to tune agent _executor for better understanding of the database

题意:如何调整agent _executor以更好地理解数据库 问题背景: I have a database in which I have connected an agent too. However, I have noticed that it sometimes gets confused between whether or not it should return a column ID or persons…

5 mysql 查询语句

1.DML:对数据进行增删改查 提示:Execute执行 Execute and Suppress 执行并且抑制这个警告 person表的结构 /* DML:Data Manipulation Language 数据操作语言,对数据进行 增删改查操作,因为査询的操作太频繁和复杂,将查询的操作独立成为DQL */ use db1109;//person表在d…

智慧水务项目(二)django(drf)+angular 18 创建通用model,并对orm常用字段进行说明

一、说明 上一篇文章建立一个最简单的项目,现在我们建立一个公共模型,抽取公共字段,以便于后续模块继承,过程之中会对orm常用字段进行说明,用到的介绍一下 二、创建一个db.py 目录如下图 1、代码 from importlib im…

私域流量变迁与精细移动化趋势下的AI智能名片小程序源码应用探索

摘要:随着移动互联网技术的飞速发展,私域流量的价值日益凸显,成为企业营销战略的重要组成部分。私域流量的精细化和移动化趋势不仅改变了传统的营销格局,也为新兴技术的应用提供了广阔空间。本文深入探讨了私域流量的变迁历程&…

磁盘碎片整理工具IObit Smart Defrag PRO 绿色版

在数字化时代,电脑的性能直接影响到我们的工作效率和娱乐体验。随着使用时间的增长,硬盘上的文件碎片逐渐增多,导致电脑运行缓慢。今天,我为大家介绍一款强大的磁盘碎片整理工具——IObit Smart Defrag,它能有效解决这…

探索Python的聊天机器人世界:Errbot的魔力

文章目录 探索Python的聊天机器人世界:Errbot的魔力背景:为何选择Errbot?Errbot:Python中的聊天机器人框架安装Errbot:简单几步,即刻开始探索Errbot:五个简单函数的魔法1. 创建机器人2. 响应消息…

全球汽车用MEMS加速度计市场规划预测:未来六年CAGR为2.8%

随着汽车行业的持续发展和消费者对安全性能的需求增加,汽车用MEMS加速度计作为提升车辆安全性和稳定性的关键组件,正逐渐受到市场的广泛关注。本文旨在通过深度分析汽车用MEMS加速度计行业的各个维度,揭示行业发展趋势和潜在机会。 【市场趋…

ElementPlus 中el-select自定义指令实现触底加载请求options数据

1) 背景: 老项目翻新时,发现一个下拉框数据非常多,客户呢,希望全部数据一起展示,意思就是全部数据一起返回给前端用于展示。但这会造成明显的卡顿。~~明显的不合理! QAQ!~~ 于是压力给到前端,查询资料,各种…

论文阅读:Most Probable Densest Subgraphs

摘要 本文提出了一种在不确定图中发现最有可能稠密子图(MPDS)的新方法。不确定图中的每条边都有存在概率,使得计算稠密子图变得複杂。作者定义了稠密子图概率,并证明了计算该概率是#P难的。为了解决这个问题,设计了基…

算法通关:014_1:用栈实现队列

文章目录 题目总结代码运行结果 题目 用栈实现队列 leetcode :232 总结 时间复杂度 平均下来每个方式是O(1) 代码 class MyQueue {public Stack<Integer> in;public Stack<Integer> out;//初始化public MyQueue() {in new Stack<>();out new Stack<…

整体接口测试

文章目录 1.分类1.新增分类1.接口设计2.结果 2.更新分类1.接口设计2.结果 3.查询分类1.接口设计2.结果&#xff08;少了一个count字段暂时不改&#xff09; 4.查询大类下分类1.接口设计2.结果 5.删除分类1.接口设计2.结果 2.标签1.新增标签1.接口设计2.结果 2.更新标签1.接口设…

E5092A可配置的多端口测试仪

E5092A 可配置的多端口测试仪 多达 10 个端口的全交叉测量&#xff0c;或者最多 22 个端口的测量功能。 概述 E5092A 多端口测试仪可以灵活配置&#xff0c;并可与4 端口ENA 网络分析仪&#xff08;E5070B/E5071B/E5071C/E5080A&#xff09;结合使用&#xff0c;组成频率范…

信息安全管理中,文件销毁、硬盘销毁、数据销毁和物料销毁分别如何

文件销毁的方法主要有删除、覆盖、加密和物理破坏。硬盘销毁的方法主要有物理破坏、磁性破坏、化学破坏和高温破坏。数据销毁的方法主要有逻辑删除、物理破坏、磁性破坏和化学破坏。物料销毁的方法主要有回收利用、填埋处理、焚烧处理、生物降解和化学处理。 文件销毁的方法&a…

江协科技51单片机学习- p31 LCD1602液晶屏驱动

&#x1f680;write in front&#x1f680; &#x1f50e;大家好&#xff0c;我是黄桃罐头&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流 &#x1f381;欢迎各位→点赞&#x1f44d; 收藏⭐️ 留言&#x1f4dd;​…