webentwicklung-frage-antwort-db.com.de

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

Was ist los mit dem Code gibt es viele Fehler beim Debuggen. Ich schreibe einen Code für eine Singleton-Klasse, um eine Verbindung mit der Datenbank mysql herzustellen.

Hier ist mein Code

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();
    }
}

Ich bin neu in Java. Bitte helfen Sie.

79
atikul hussain

Es scheint, dass die MySQL-Konnektivitätsbibliothek nicht im Projekt enthalten ist . Lösen Sie das Problem anhand einer der vorgeschlagenen Lösungen:

  • MAVEN PROJECTS LÖSUNG

Fügen Sie die mysql-connector-Abhängigkeit zur pom.xml-Projektdatei hinzu:

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

Hier sind Sie alle Versionen: https://mvnrepository.com/artifact/mysql/mysql-connector-Java

  • ALLE PROJEKTE LÖSUNG

Fügen Sie die JAR-Bibliothek manuell zum Projekt hinzu.

Klicken Sie mit der rechten Maustaste auf das Projekt -> Erstellungspfad -> Erstellungspfad konfigurieren

Im Libraries Tab drücken Sie Add External Jar und Select Ihr Glas.

Sie finden Zip für MySQL-Connector hier

  • Erklärung:

Wenn Sie das Projekt erstellen, löst Java eine Ausnahme aus, da eine Datei (die Klasse com.mysql.jdbc.Driver) aus der mysql-Konnektivitätsbibliothek nicht gefunden wird. Die Lösung fügt die Bibliothek der hinzu project, und Java findet den com.mysql.jdbc.Driver

117
R9J

Wenn der Fehler in Ihrer IDE aufgetreten ist (Fehler bei der Kompilierung), müssen Sie Ihre mysql-connector-JAR-Datei zu Ihren Bibliotheken hinzufügen und diese auch Ihrer referenzierten Projektbibliothek hinzufügen.

Wenn Sie diese Fehlermeldung erhalten, während Sie sie ausführen, liegt dies wahrscheinlich daran, dass Sie die mysql-connector-JAR-Datei nicht in den lib-Ordner Ihres Webservers aufgenommen haben.

Fügen Sie mysql-connector-Java-5.1.25-bin.jar Zu Ihrem Klassenpfad und auch zum lib-Verzeichnis Ihres Webservers hinzu. Der Tomcat-Bibliothekspfad wird als Beispiel angegeben Tomcat 6.0\lib

50
Asad

Für Gradle - basierte Projekte benötigen Sie eine Abhängigkeit von MySQL Java Connector :

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

Sie müssen die Treiber-JAR-Datei für MySQL MySQL Connector Jar in Ihren Klassenpfad aufnehmen.

Wenn Sie Eclipse verwenden: Hinzufügen abhängiger Bibliotheken in Eclipse

Wenn Sie die Befehlszeile verwenden, geben Sie den Pfad zur Treiberdatei mit dem Parameter -cp von Java an.

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

Jeder hat eine Antwort geschrieben, aber ich bin immer noch überrascht, dass niemand sie auf die einfachste Art und Weise beantwortet hat.
Die Leute antworten, die die JAR-Datei enthalten. Der Fehler wird jedoch weiterhin auftreten.

Der Grund dafür ist, dass die JAR-Datei beim Ausführen des Projekts nicht bereitgestellt wird. Also, was wir tun müssen, ist, das IDE) anzuweisen, dieses Glas auch bereitzustellen.

Die Leute hier haben so oft geantwortet, dass sie diese JAR-Datei in den lib-Ordner von WEB-INF gelegt haben. Das scheint in Ordnung zu sein, aber warum manuell? Es gibt einen einfachen Weg. Überprüfen Sie die folgenden Schritte:

Schritt 1: Wenn Sie die JAR-Datei nicht in das Projekt referenziert haben, referenzieren Sie sie folgendermaßen.

Klicken Sie mit der rechten Maustaste auf das Projekt und gehen Sie zu den Projekteigenschaften. Wechseln Sie dann in den Erstellungspfad Java) und fügen Sie über diesen Pfad eine externe JAR-Datei hinzu.

Dies wird das Problem jedoch immer noch nicht lösen, da das Hinzufügen der externen JAR-Datei über den Erstellungspfad nur zum Kompilieren der Klassen beiträgt und die JAR-Datei nicht bereitgestellt wird, wenn Sie das Projekt ausführen. Befolgen Sie dazu diesen Schritt

Klicken Sie mit der rechten Maustaste auf das Projekt und gehen Sie zu den Projekteigenschaften. Wechseln Sie dann zu Deployment Assembly und drücken Sie Add . Wechseln Sie dann zu Geben Sie die Java-Erstellungspfadeinträge ein und fügen Sie Ihre Bibliotheken hinzu, unabhängig davon, ob es sich um JSTL, MYSQL oder eine andere JAR-Datei handelt. Fügen Sie sie der Bereitstellung hinzu. Unten sind die beiden Bilder, die es anzeigen.

Before Adding

After Adding

9

suche in deinem Klassenpfad nach jar (mysql-connector-Java-bin)hier herunterladen

9
KhAn SaAb

Die JDBC-API besteht hauptsächlich aus Schnittstellen, die unabhängig von einer Datenbank funktionieren. Für jede Datenbank, die die JDBC-API implementiert, ist ein datenbankspezifischer Treiber erforderlich.

Laden Sie zuerst die MySQL-Connector-JAR von www.mysql.com herunter.

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

Drücken Sie auf der Registerkarte "Bibliotheken" auf Add External Jar und wähle dein Glas aus.

8
Sathish SR

Für Maven-basierte Projekte benötigen Sie eine Abhängigkeit.

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

Im Projekt in den Ordner Libraries -> Rechtsklick -> Add Library -> Mysqlconnector 5.1

2
Kika_Fortez

Der Treiberconnector befindet sich nicht in Ihrem Erstellungspfad. Konfigurieren Sie den Erstellungspfad und verweisen Sie ihn auf "mysql-connector-Java-5.1.25-bin.jar" (überprüfen Sie die Version, die Sie verwenden). Alternativ können Sie maven verwenden: D

2
shikjohari

Dies liegt daran, dass der Ordner WEB-INF im Fehlerfall nicht an der Position im Unterverzeichnis vorhanden ist. Sie kompilieren entweder die Anwendung, um den WEB-INF-Ordner unter public_html OR) zu verwenden. Kopieren Sie den WEB-INF-Ordner wie im obigen Fehler in einen Unterordner.

1
MilesWeb

Trivial, wie es in meinem Fall scheinen mag, war netbeans version maven project 7.2.1 anders. Es gibt einen Ordner im Projekt, der Abhängigkeiten heißt. Klicken Sie mit der rechten Maustaste und es öffnet sich ein Popup-Fenster, in dem Sie nach Paketen suchen können. In den Abfragebereich stellen

mysql-connector

Es werden die Übereinstimmungen angezeigt (es scheint, dass dies gegen ein Repository erfolgt). Doppelklicken und installieren.

1
Paul

Wenn Sie Tomcat verwenden, sollten Sie zusammen mit dem Projektverzeichnis auch die JAR-Datei des Datenbank-Connectors nach Tomcat/lib kopieren. das hat bei mir funktioniert

0
Santosh Kadam

Wechseln Sie für IntelliJ Idea zu Ihrer Projektstruktur (Datei, Projektstruktur), und fügen Sie die JAR-Datei für den MySQL-Connector Ihrer globalen Bibliothek hinzu. Klicken Sie dort mit der rechten Maustaste darauf und wählen Sie "Zu Modulen hinzufügen". Drücken Sie Übernehmen/OK und Sie sollten bereit sein zu gehen.

0
Michael Sims

Die Ausnahme kann auch auftreten, weil der Klassenpfad nicht definiert ist.

Nach stundenlangen Nachforschungen und buchstäblich Hunderten von Seiten war das Problem, dass der Klassenpfad der Bibliothek nicht definiert wurde.

Legen Sie den Klassenpfad auf Ihrem Windows-Computer wie folgt fest

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

Ich habe Ihr Problem verstanden. Fügen Sie diese Abhängigkeit in Ihre pom.xml ein. Ihr Problem wird gelöst.

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

0