Класс драйвера JDBC не найден: com.mysql.jdbc.Driver - PullRequest
13 голосов
/ 08 января 2012

Я занимаюсь разработкой веб-приложения с использованием maven spring и hibernate, и мне нужно создать схему с использованием hibernate, для которой в моем pom.xml было указано следующее для подключения к базе данных MySQL 5.5.

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

Это импортированное mysql-connector-java-5.1.15.jar в моем Libraries под Maven Dependencies, но когда я пытаюсь подключиться к базе данных, это дает мне Exception in thread "main" org.hibernate.HibernateException: JDBC Driver class not found: com.mysql.jdbc.Driver.

Я делал это, как миллионы раз, но я делал это, когда не привык использовать Maven для управления своими зависимостями и построения проекта. У меня просто был тот же самый jar-файл в папке lib на Dynamic Web Project в Eclipse IDE.

Может кто-нибудь сказать мне, что мне здесь не хватает и что еще мне нужно, чтобы эта банка была в моем пути сборки?

Спасибо.

Ответы [ 6 ]

16 голосов
/ 08 января 2012

Начнем с того, что jar, который мне нужен для подключения к MySQL 5.5, должен был быть mysql-connector-java-5.1.15-bin.jar, но не mysql-connector-java-5.1.15.jar.Во-вторых, этот jar-файл недоступен в репозитории maven, поэтому мне нужно было вручную добавить его в мой локальный репозиторий maven, а затем добавить в качестве зависимости в мой pom.xml.

Добавление mysql-connector-java-5.1.15-bin.jar в локальный репозиторий maven.

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

, а затем добавить следующую зависимость к pom.xml проекта.

    <!-- MySql 5.5 Connector -->   
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.15-bin</version>
    </dependency> 
6 голосов
/ 21 декабря 2012

Спасибо за ответы выше - просто комментарий для пользователей NetBeans: (имена будут заменены вашими версиями)

  1. mysql JAR можно скачать здесь
  2. Исполняемый файл MVN можно найти по адресу c:\Program Files\NetBeans 7.2.1\java\maven\bin
  3. пробег set JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_10
  4. Тогда вышеприведенная команда будет работать: 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. установленный пакет можно найти в репозитории m2 в вашей домашней папке
3 голосов
/ 24 сентября 2015

Мой рабочий раствор

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

Добавление вышеуказанной зависимости в pom.xml работает для меня ...

2 голосов
/ 08 января 2012

Распакуйте ваш сгенерированный файл JAR. В нем есть папка WEB-INF. Затем проверьте, существует ли в этом WEB-INF / lib файл mysql-connector-java-5.1.15.jar.

0 голосов
/ 27 января 2019

Проверьте версию MySql, используя SELECT version(), а затем проверьте зависимость версии MySQL в pom.xml

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

application.properties файлах:

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 голосов
/ 24 июля 2017

Добавить следующий код в файл pom.xml

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.6</version>
    </dependency>
...