web-dev-qa-db-fra.com

Classe du pilote JDBC introuvable: com.mysql.jdbc.Driver

Je développe une application Web utilisant maven spring et hibernate et je dois créer un schéma utilisant hibernate pour lequel j'avais les informations suivantes dans mon pom.xml afin de me connecter à la base de données MySQL 5.5.

    <!-- MySql 5.5 Connector -->   
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-Java</artifactId>
        <version>5.1.15</version>
    </dependency>

Ce mysql-connector-Java-5.1.15.jar importé dans ma Libraries sous Maven Dependencies, mais lorsque j'essaie de me connecter à la base de données, il me donne Exception in thread "main" org.hibernate.HibernateException: JDBC Driver class not found: com.mysql.jdbc.Driver

Je l'ai fait comme des millions de fois, mais je l'avais fait quand je n'avais pas l'habitude d'utiliser Maven pour gérer mes dépendances et construire le projet. J'avais l'habitude de l'avoir dans le même fichier jar dans le dossier lib d'un Dynamic Web Project dans Eclipse IDE.

Est-ce que quelqu'un pourrait me dire ce qui me manque ici et ce qu'il me faut d'autre pour avoir ce bocal dans mon chemin de build? 

Merci.

13
skip

Pour commencer, le fichier jar que je dois connecter à MySQL 5.5 aurait dû être mysql-connector-Java-5.1.15-bin.jar mais pas mysql-connector-Java-5.1.15.jar. Deuxièmement, ce fichier jar n’est pas disponible dans le référentiel maven. J’ai donc dû l’ajouter manuellement à mon référentiel maven local, puis l’ajouté en tant que dépendance dans mon pom.xml.

Ajout de mysql-connector-Java-5.1.15-bin.jar au référentiel maven local par

mvn install:install-file -Dfile=C:\Libraries\mysql-connector-Java-5.1.15-bin\mysql-connector-Java-5.1.15-bin.jar -DgroupId=mysql -DartifactId=mysql-connector-Java -Dversion=5.1.15-bin -Dpackaging=jar

puis en ajoutant la dépendance suivante à pom.xml du projet.

    <!-- MySql 5.5 Connector -->   
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-Java</artifactId>
        <version>5.1.15-bin</version>
    </dependency> 
15
skip

Merci pour les réponses ci-dessus - juste un commentaire pour les utilisateurs NetBeans: (Noms à remplacer par vos versions)

  1. Le JAR mysql peut être téléchargé ici
  2. le fichier mvn peut être trouvé à c:\Program Files\NetBeans 7.2.1\Java\maven\bin
  3. lancer set Java_HOME=C:\Program Files (x86)\Java\jdk1.7.0_10
  4. Ensuite, la commande ci-dessus fonctionnerait: mvn install:install-file -Dfile=mysql-connector-Java-5.1.15-bin.jar -DgroupId=mysql -DartifactId=mysql-connector-Java -Dversion=5.1.15-bin -Dpackaging=jar
  5. le paquet installé peut être trouvé dans le référentiel m2 de votre dossier personnel
6
zbycz

Ma solution de travail 

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

l'ajout de la dépendance ci-dessus à pom.xml fonctionne pour moi ...

3
Aby Joseph

Décompressez votre fichier JAR généré. Il existe un dossier dans WEB-INF. Vérifiez ensuite si mysql-connector-Java-5.1.15.jar existe dans ce fichier WEB-INF/lib.

2
Mirko Ebert

Ajouter un code inférieur au fichier pom.xml

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-Java</artifactId>
        <version>5.1.6</version>
    </dependency>
0

Vérifiez la version de MySql en utilisant SELECT version() Puis vérifiez la dépendance de la version de mysql dans pom.xml 

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

application.properties fichiers:

spring.datasource.url=jdbc:mysql://localhost:3306/db_name

spring.datasource.username=root
spring.datasource.password=

spring.datasource.testWhileIdle=true
spring.datasource.validationQuery = SELECT 1
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.show-sql=true

spring.jpa.hibernate.ddl-auto=update

spring.jpa.properties.hibernate.dialact=org.hibernate.dialact.MySQL5Dialact 
0
chandra Shekhar