web-dev-qa-db-ja.com

java.lang.ClassNotFoundException:ライブラリをインポートした後でもcom.mysql.jdbc.Driverエラー

ほとんどの人がまったく同じ質問に答えたように、ライブラリ「mysql-connector-Java-5.1.39」をインポートしましたが、それでもこのエラーが発生します

Java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

これがテストクラスのコードです

package database;

import Java.sql.Connection;
import Java.sql.DriverManager;

public class Main {

    public static void main(String[] args) throws Exception {
        getConnection();
    }

    public static Connection getConnection() throws Exception {
        try{
            String driver="com.mysql.jdbc.Driver";
            String url="jdbc:mysql://localhost:3306/test";
            String username="root";
            String password="root";
            Class.forName(driver);
            Connection conn= DriverManager.getConnection(url,username,password);
            System.out.println("connected");
            return conn;
        }
        catch (Exception e){
            System.out.println(e);
        }
        return null;
    }
}

Eclipse directory

MacOSを使用します。

誰もが私の後に繰り返します。 (:-))

「Java.lang.ClassNotFoundException:com.mysql.jdbc.Driver」はコンパイルエラーではありません。

したがって、>> build <<パスを変更したり、importを追加したりしても、問題を解決することはできません。

解決策は、アプリケーションの実行時にJARファイルがクラスパス上にあることを確認することです。たとえば、テストクラスがbin\database\Main.classにあり、ドライバーJARがlibにある場合...

$ Java -classpath bin:lib/mysql-connector-Java-5.1.39.jar database.Main
3
Stephen C

jarがすでに外部ライブラリに追加されている場合、単に追加できます:

import com.mysql.jdbc.Driver;

そしてそれはあなたのクラスで働くでしょう。

これはさらに役立ちます SO-21580499

2
nullpointer

コード内の「Java.lang.ClassNotFoundException:com.mysql.jdbc.Driver」の最も考えられる理由のいくつかは次のとおりです。

  1. クラスパスにmysql-connector.jarがありません。
  2. mysql-connector.jarはクラスパスにありますが、どういうわけかクラスパスがオーバーライドされています。
  3. mysql-connector.jarはクラスパスにありますが、現在のユーザーには読み取り権限がありません。
2
MeisterAjit

アプリがMicrosoftSQLServerのJDBCドライバーを見つけられないようです。以下からダウンロードして、jarをWEB-INF/libに追加できます。

https://www.Microsoft.com/en-us/download/details.aspx?displaylang=en&id=11774

1
Slava Imeshev

次のいずれかが欠落している可能性があります。エラーを削除するには、次の両方が必要です。

  1. Mysql-connector.jarファイルをWebContent/WEB-INF/libフォルダーに追加します。

  2. クラスパスにmysql-connector.jarファイルを追加する

https://mvnrepository.com/artifact/mysql/mysql-connector-Java/8.0.11 からmysql-connector.jarをダウンロードします。

最初の問題を解決するには、上記でダウンロードしたjarファイルをプロジェクトのWebContent/WEB-INF/libフォルダーに貼り付けます。

2番目の問題を解決するには-プロジェクトを右クリックし、propertiesに移動してから、Java Build Pathそしてライブラリセクションを選択外部JARをクリックし、上記でダウンロードしたjarファイルを選択します。

それが役に立てば幸い。

0
Neeraj Kumar