You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot启动报错:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

解决Spring Boot项目启动时java.lang.ClassNotFoundException: com.mysql.jdbc.Driver错误

1. 修正数据库驱动类配置

mysql-connector-j(原mysql-connector-java 8.x+版本)的驱动类名已变更,旧的com.mysql.jdbc.Driver不再适用,需修改配置文件:

  • 若使用application.properties:
    # 替换旧的驱动类配置
    spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
    
  • 若使用application.yml:
    spring:
      datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
    

注:Spring Boot 2.0+版本可省略driver-class-name配置,框架会根据spring.datasource.url自动推断正确的驱动类

2. 确认pom.xml依赖配置正确性

确保依赖为最新的mysql-connector-j,且配置正确:

<dependency>
    <groupId>com.mysql</groupId>
    <artifactId>mysql-connector-j</artifactId>
    <scope>runtime</scope> <!-- 仅运行时需要,避免编译期冲突 -->
</dependency>
  • 不要使用旧的mysql-connector-java依赖,该依赖已被mysql-connector-j替代
  • 无需手动指定版本,Spring Boot的依赖管理会自动匹配兼容版本

3. 清理并重建项目依赖

  1. 右键项目 → Maven → Clean
  2. 右键项目 → Maven → Update Project,勾选「Force Update of Snapshots/Releases」
  3. 执行菜单 Project → Clean...,选择清理所有项目
  4. 重启Spring Tool Suite,清除IDE缓存

4. 验证依赖是否正确加载

打开项目的Maven Dependencies目录,确认存在mysql-connector-j-xxx.jar文件:

  • 若不存在,手动删除本地Maven仓库中com/mysql/mysql-connector-j目录,再执行mvn install强制重新下载依赖

5. 排查依赖冲突

  1. 右键pom.xml → Maven → Show Dependencies
  2. 查找是否有旧的mysql-connector-java依赖被其他间接依赖引入
  3. 若存在冲突,在mysql-connector-j依赖中排除旧依赖:
<dependency>
    <groupId>com.mysql</groupId>
    <artifactId>mysql-connector-j</artifactId>
    <scope>runtime</scope>
    <exclusions>
        <exclusion>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </exclusion>
    </exclusions>
</dependency>

内容的提问来源于stack exchange,提问作者manav dubey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 22:08:09