web-dev-qa-db-fra.com

java.lang.ClassNotFoundException: erreur com.mysql.jdbc.Driver même après l'importation de la bibliothèque

J'ai importé ma bibliothèque "mysql-connector-Java-5.1.39" Telle que la plupart des gens l'ont répondu exactement à la même question, Mais je reçois toujours cette erreur

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

voici le code de la classe de test 

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

Utilisation de Mac OS.

Tout le monde répète après moi. (:-))

"Java.lang.ClassNotFoundException: com.mysql.jdbc.Driver" n'est PAS une erreur de compilation.

Par conséquent, modifier le chemin >> build << ou ajouter une import ne peut résoudre le problème.

La solution consiste à vérifier que le fichier JAR se trouve sur le chemin d'accès aux classes lorsque vous exécutez l'application. Par exemple, si votre classe de test est dans bin\database\Main.class et que le fichier JAR du pilote est dans lib ...

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

si le fichier jar est déjà ajouté à vos bibliothèques externes, vous pouvez simplement ajouter:

import com.mysql.jdbc.Driver;

et cela fonctionnera dans votre classe.

Cela aidera davantage SO-21580499

2
nullpointer

Certaines des raisons les plus possibles de "Java.lang.ClassNotFoundException: com.mysql.jdbc.Driver" dans votre code sont les suivantes:

  1. Vous n'avez pas mysql-connector.jar dans votre chemin de classe.
  2. mysql-connector.jar est dans votre chemin de classe, mais il est en quelque sorte remplacé.
  3. mysql-connector.jar est dans le chemin d'accès aux classes, mais l'utilisateur actuel ne dispose pas de l'autorisation de lecture.
2
MeisterAjit

Il semble que votre application ne trouve pas le pilote JDBC pour Microsoft SQL Server. Vous pouvez le télécharger ci-dessous et ajouter le pot à votre WEB-INF/lib:

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

1
Slava Imeshev