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

Java中如何正确添加MySQL JDBC连接器?com.mysql.cj.jdbc包不存在报错如何解决

报错原因与解决方案

核心报错原因

该报错是Java编译/运行阶段没有将MySQL Connector/J驱动包加载到类路径导致的,仅把驱动jar放在代码同目录不会被Java自动识别加载。
你当前使用的MySQL 8.0 + 驱动8.0.26的版本匹配是正确的,com.mysql.cj.jdbc.MysqlDataSource也是8.x版本驱动的正确导入路径,无需修改导入语句。

分步解决方案

1. 先确认驱动包完整性

检查你放到同目录的jar包名称是否为mysql-connector-java-8.0.26.jar,不要用解压后的文件夹,也不要下载到错误的源码包,要确保是官方编译好的可执行jar包。

2. 手动命令行编译运行场景

编译和运行阶段都需要显式指定classpath包含驱动jar包:

  • Linux/macOS系统执行命令:
    编译:javac -cp .:mysql-connector-java-8.0.26.jar conn.java
    运行:java -cp .:mysql-connector-java-8.0.26.jar conn
  • Windows系统执行命令:
    编译:javac -cp .;mysql-connector-java-8.0.26.jar conn.java
    运行:java -cp .;mysql-connector-java-8.0.26.jar conn

3. IDE开发场景(IDEA/Eclipse)

  • IDEA操作路径:进入File -> Project Structure -> Libraries,点击+号选择Java,找到本地存放的mysql-connector-java-8.0.26.jar添加,确认应用到当前项目模块即可。
  • Eclipse操作路径:右键当前项目 -> Build Path -> Add External Archives,选中对应的驱动jar包导入即可。

代码潜在问题修正

你的现有代码catch块存在空指针风险:连接失败时con为null,调用con.class.getName()会额外抛出空指针异常,将对应行修改为:

Logger.getLogger(conn.class.getName()).log(Level.SEVERE, null, ex);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 20:27:04