Cannot load driver class:com.mysql.cj.jdbc.Driver

本文介绍了在Java项目中遇到`Cannot load driver class: com.mysql.cj.jdbc.Driver`错误的解决过程。问题源于MySQL驱动版本不匹配,升级到8.0.x版本并调整pom.xml配置。尝试多种方法如添加依赖、更新Maven项目等,最终发现是由于Spring Boot依赖管理中指定了旧版本的MySQL驱动。通过修改本地Maven仓库中对应文件的版本号,成功使所有工程加载到8.0.x版本驱动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目报错:java.lang.IllegalStateException:Cannot load driver class:com.mysql.cj.jdbc.Driver

报错了不要紧,就怕不报错。

根据报错提示:这个问题主要时mysql连接失败:

小编刚装的Mysql数据库,java项目导入的jar包版本是5.x的版本,将mysql-connector-java升级到8.0.x的版本;

1.pom.xml文件如下:

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.x</version>
</dependency>

 2.查看配置文件中的驱动类名字是否正确;

spring.datasourse.driver-class-name=com.mysql.cj.jdbc.Driver

3.查看maven依赖,发现mysql-connector-java-5.x.jar是之前的5.x,那么就需要替换到新的mysql-connector-java-8.0.x.jar包.

4.通过添加mysql-connector-java.jar包到maven仓库。https://blog.youkuaiyun.com/qq_40615403/article/details/103306483

5.maven仓库中可以查看到,进行maven--》update project。一般情况下到这一步就ok。小编这次这么操作,maven依赖中并没进行加载mysql-connector-java-8.0.x.jar包。

6.根据百度提供的各种操作一顿试,结果还是maven无法加载mysql-connector-java-8.0.x.jar包,小编百般无奈之下放弃,内心戏非常足,一顿斗争之后,灰头土脸的继续。柳暗花明又一村。

7.点击项目--》maven--》Add Dependency,出现如下界面;

在对应的Group Id  、 Artifact Id 、Version中填写对应的,mysql、mysql-connector-java、8.0.x;Scope 中进行选择:runtime ,最后点击ok,查看maven中有mysql-connector-java-8.0.x.jar

查看maven依赖,这个jar包加载进项目中,但这种加载是你添加哪个工程,哪个工程下才有,小编用这种方式对其他工程也进行添加,重新maven后,还是不成功。

小编只好在pom文件中还原到之前的5.x版本,查看maven依赖是否加载之前的版本,然后修改版本号,重新maven,查看maven依赖,这次查看,加载的是8.0.x版本,但是查看别的工程,加载的还是之前的5.x版本,小编查看项目中的pom.xml,并没有查看到对应的5.x版本,那么怎么会加载之前的版本。

点击pom.xml中的mysql-connector-java的依赖,会出现以下提示:

The manged version is 5.x The artifact is managed in org.springframework.boot:spring-boot-dependencies:1.5.6.RELEASE

Jump to location (进入文件)

原来这边依赖中有mysql5.x的版本,怪不得会加载5.x的版本。

小编根据提示,在自己本地的maven仓库中找到提示的文件,修改pom文件下的mysql版本号。重新maven--》update project

查看maven依赖,各个工程加载的是8.0.x版本。问题解决ok。

问题看着简单,解决后更简单,可是简单的问题,花费的时间却不小,心一定要细,否则只会盲目的解决问题,解决不了,还浪费时间。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值