我在使用java和jdbc時遇到了一些麻煩。 特別是,雖然我的代碼完全在NetBeans項目的工作,當我嘗試執行它的終端或在我的Ubuntu VPS(這是我需要它的工作),我總是得到這個異常:無法連接到MySQL數據庫:找不到合適的驅動程序
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/quakes
首先要做的是:我將jdbc .jar添加到執行命令和編譯命令中;是的,我甚至嘗試添加
Class.forName("com.mysql.jdbc.Driver");
,
,但我總是得到ClassNotFoundException: com.mysql.jdbc.Driver
例外 我使用的.jar是完全一樣的,我在NetBeans項目中使用,所以我知道我有正確的事情,甚至從官方網站下載它不會改變一件事情。 是的,數據庫存在,如果我嘗試連接到另一個數據庫,結果不會改變。 我也嘗試切換到postgresql(是的,我沒有忘記更改網址),但無濟於事,它仍然無法找到驅動程序。 由此,我猜測,實際的錯誤是在編譯/執行命令,但即使它們應該確定:
javac *.java <-cp mysql-connector-java-5.1.41-bin.jar >
(所述<>括號意味着我試圖有和沒有指定的類路徑編譯);
java TAW -cp mysql-connector-java-5.1.41-bin.jar
,
在你想看到它的情況下,下面是嘗試連接到數據庫的方法:
public Connection getConnection() throws SQLException {
if (conn == null) {
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/"+
this.dbname,this.user,this.pass);
}
return conn;
}
有沒有人對爲什麼出現這種情況的任何想法?
呃..是的,這是真的,我是一個白癡。事情是,現在它找不到主類 – Elsifo
,您將不得不將類包含的包添加到類路徑中。查看https://docs.oracle.com/javase/8/docs/technotes/tools/windows/classpath.html以獲取更多信息 –
查看我的編輯,包括'; .'(或':.'(如果在Linux上))將在類路徑中包含本地文件夾。 –