Java 專案無法連接 MySQL,報錯通常為 ClassNotFoundException: com.mysql.jdbc.Driver 或 No suitable driver found。本文釐清 classpath、JAR 包、模塊路徑的區別與正確配置。
module-info.java 中 requiresmysql-connector-java-x.x.x.jarlib/ 目錄-cp ".;lib/mysql-connector-java-x.x.x.jar"<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId> <!-- 8.0+ 新坐標 -->
<version>8.0.33</version>
</dependency>
刷新 Maven 專案(mvn dependency:resolve 或 IDE 刷新)。
implementation 'com.mysql:mysql-connector-j:8.0.33'
com.mysql.jdbc.Drivercom.mysql.cj.jdbc.Driver(自動註冊,通常無需手動 Class.forName)String url = "jdbc:mysql://localhost:3306/mydb?useSSL=false&serverTimezone=UTC";
String user = "root";
String pwd = "123456";
try (Connection conn = DriverManager.getConnection(url, user, pwd)) {
System.out.println("連接成功:" + conn.getMetaData().getURL());
} catch (SQLException e) {
e.printStackTrace();
}
關鍵點:JAR 必須在 Classpath 中,而非僅在硬盤某目錄。Maven/Gradle 管理依賴最省心。