web-dev-qa-db-ja.com

java.lang.ClassNotFoundException:Eclipseのcom.mysql.jdbc.Driver

コードの何が問題になっていますかデバッグ中にたくさんのエラーがあります。私はデータベースmysqlに接続するためのシングルトンクラスのコードを書いています。

これが私のコードです

package com.glomindz.mercuri.util;
import Java.sql.Connection;
import Java.sql.Driver;
import Java.sql.DriverManager;
import Java.sql.SQLException;

public class MySingleTon {
    String url = "jdbc:mysql://localhost:3306/";
    String dbName = "test";
    String driver = "com.mysql.jdbc.Driver";
    String userName = "root";
    String password = "";

    private static MySingleTon myObj;   
    private Connection Con ;
    private MySingleTon() {
        System.out.println("Hello");
        Con= createConnection();
    }

    @SuppressWarnings("rawtypes")
    public Connection createConnection() {
        Connection connection = null;
        try {
            // Load the JDBC driver
            Class driver_class = Class.forName(driver);
            Driver driver = (Driver) driver_class.newInstance();
            DriverManager.registerDriver(driver);
            connection = DriverManager.getConnection(url + dbName);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InstantiationException e) {
            e.printStackTrace();
        }
        return connection;
    }

    /**
     * Create a static method to get instance.
     */
    public static MySingleTon getInstance() {
        if (myObj == null) {
            myObj = new MySingleTon();
        }
        return myObj;
    }

    public static void main(String a[]) {
        MySingleTon st = MySingleTon.getInstance();
    }
}

私はJavaが初めてです。助けてください。

77
atikul hussain

プロジェクトにmysql接続ライブラリが含まれていないようです。提案された解決策の1つに従って問題を解決してください。

  • MAVEN PROJECTS SOLUTION

Mysql-connector依存関係をpom.xmlプロジェクトファイルに追加します。

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-Java</artifactId>
    <version>5.1.39</version>
</dependency>

ここにあなたはすべてのバージョンです: https://mvnrepository.com/artifact/mysql/mysql-connector-Java

  • 全プロジェクトソリューション

プロジェクトにjarライブラリを手動で追加します。

プロジェクトを右クリック - >ビルドパス - >ビルドパスを設定

Libraries Tabで、Add External JarSelectを押してください。

あなたはmysqlコネクタのZipを見つけることができます こちら

  • 説明:

Mysql接続ライブラリのファイル(com.mysql.jdbc.Driverクラス)が見つからないため、プロジェクトをビルドするときにJavaが例外をスローします。解決策は、ライブラリをプロジェクトに追加することです。Javaはcom.mysql.jdbc.Driverを見つけます。

113
R9J

IDEでエラー(コンパイル時エラー)が発生した場合は、mysql-connector jarファイルをlibsに追加し、それを参照先のプロジェクトのライブラリにも追加する必要があります。

実行しているときにこのエラーが発生した場合は、おそらくmysql-connector JARファイルをWebサーバーのlibフォルダにインクルードしていないためです。

クラスパスとWebサーバーのlibディレクトリにmysql-connector-Java-5.1.25-bin.jarを追加します。 Tomcatのlibパスが例として与えられていますTomcat 6.0\lib

50
Asad

MySQLのドライバjar MySQL Connector Jar をクラスパスに含める必要があります。

Eclipseを使用している場合: Eclipseに依存ライブラリを追加する方法

コマンドラインを使用している場合は、Javaの-cpパラメータを使用してドライバjarへのパスを含めます。

Java -cp C:\lib\* Main
11
Narendra Pathai

Gradle ベースのプロジェクトの場合、 MySQL Java Connector に依存する必要があります。

dependencies {
    compile 'mysql:mysql-connector-Java:6.0.+'
}
11
naXa

クラスパスのjar(mysql-connector-Java-bin)を確認してください ここからダウンロードしてください

9
KhAn SaAb

JDBC APIは、ほとんどの場合、どのデータベースからも独立して機能するインターフェースで構成されています。 JDBC APIを実装するデータベースごとに、データベース固有のドライバが必要です。

最初にwww.mysql.comからMySQLコネクタjarをダウンロードしてから:

Right Click the project -- > build path -- > configure build path

ライブラリタブでAdd External Jarを押してあなたのjarファイルを選択してください。

8
Sathish SR

誰もが答えを書いていますが、私はまだ誰も実際にそれを最も簡単な方法で答えていないことに驚いています。
人々は、jarファイルを含めて答えます。しかし、それでもエラーは発生します。

その理由は、プロジェクトの実行時にjarファイルがデプロイされないためです。それで、私たちがする必要があるのは、このjarも展開するようにIDEに指示することです。

このjarファイルをWEB-INFのlibフォルダーに入れたので、ここの人々は何度も答えました。それは問題ないようですが、なぜ手動でやるのですか。簡単な方法があります。以下の手順を確認してください。

ステップ1:あなたがプロジェクトにjarファイルを参照していない場合は、このように参照してください。

プロジェクトを右クリックしてプロジェクトのプロパティに移動します。次に、Javaのビルドパスに移動し、それを介して外部のjarファイルを追加します。

しかし、これで問題が解決するわけではありません。ビルドパスで外部jarを追加してもクラスのコンパイルに役立つだけで、jarを実行しても展開されませんproject。そのためにはこのステップに従ってください

プロジェクトを右クリックしてプロジェクトのプロパティに移動します。次に、配置アセンブリに移動し、追加を押してからに移動します。 Javaビルドパスエントリを追加し、jstl、mysql、その他のjarファイルのいずれであるかに関係なくライブラリを追加します。展開にそれらを追加します。以下はそれを表示する2枚の写真です。

Before Adding

After Adding

6

Mavenベースのプロジェクトでは、依存関係が必要です。

<dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-Java</artifactId>
        <version>5.1.38</version>
</dependency>
3
tomtomssi

プロジェクトをフォルダLibrariesに - >右クリック - >ライブラリを追加 - > Mysqlconnector 5.1

2
Kika_Fortez

ドライバコネクタがビルドパスにありません。ビルドパスを設定し、 'mysql-connector-Java-5.1.25-bin.jar'を指定します(使用しているバージョンを確認してください)。あるいは、mavenを使うことができます。D

2
shikjohari

エラーのサブディレクトリの場所にWEB-INFフォルダが存在しないためです。上記のエラーのように、public_html ORの下のWEB-INFフォルダを使用するようにアプリケーションをコンパイルします。

1
MilesWeb

私の場合ではそう思われるかもしれないので些細なことNetBeansバージョンMavenプロジェクト7.2.1は異なっていました。プロジェクトには依存関係というフォルダーがあります。右クリックするとポップアップウィンドウが表示され、そこでパッケージを検索できます。クエリ領域に置く

mysql-connector

それはマッチを育てるでしょう(それはあるリポジトリに対してこれをしているようです)。ダブルクリックしてインストールします。

1
Paul

Tomcatをプロジェクトディレクトリと一緒に使用している場合は、データベースコネクタのjarファイルもTomcat/libにコピーする必要があります。これは私のために働いた

0
Santosh Kadam

IntelliJ Ideaの場合は、プロジェクト構造(ファイル、プロジェクト構造)に移動し、mysqlコネクタの.jarファイルをグローバルライブラリに追加します。そこに来たら、それを右クリックして「モジュールに追加」を選択してください。 Apply/OKを押してください。そうすればうまくいくはずです。

0
Michael Sims

クラスパスが定義されていないために例外が発生する可能性もあります。

何時間もの研究と文字通り何百ものページを通過した後の問題は、ライブラリのクラスパスが定義されていないことでした。

Windowsマシンで次のようにクラスパスを設定します。

set classpath=path\to\your\jdbc\jar\file;.
0
Harsh

私はあなたの問題があなたの問題が解決されるあなたのpom.xmlにこの依存関係を追加することを理解しました、

https://mvnrepository.com/artifact/mysql/mysql-connector-Java/5.1.38

0