Mysql
 sql >> база данни >  >> RDS >> Mysql

Maven - java.lang.ClassNotFoundException:com.mysql.jdbc.Driver

Променете обхвата на compile :

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.17</version>
    <type>jar</type>
    <scope>compile</scope>
</dependency>

Което - тъй като това е обхватът по подразбиране, съответства на изоставяне на дефиницията на обхват изобщо - същото се брои за типа:

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

Разгледайте това:https://maven.apache .org/guides/introduction/introduction-to-dependency-mechanism.html за подробна информация относно обхвата.

Ето кратка информация за вашия фон:

Зададохте JDBC драйвера да има обхват runtime . Повечето IDE така или иначе ще игнорират обхватите и ще добавят всичките ви зависимости към своите classpath (напр. classpath, използван, когато стартирате нещо извън eclipse. По обхвата runtime казвате на maven, че не трябва да пакетира тази зависимост във вашия окончателен jar, тъй като средата за изпълнение ще "предостави тази зависимост при runtime . напр. ще трябва или да го добавите ръчно към пътя към класа, когато извикате своя jar, или да промените обхвата на compile което ще доведе до това, че бурканът с драйвери ще бъде опакован във вашия буркан и достъпен по време на изпълнение.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да изпълните съхранена процедура в MySQL Workbench

  2. Какво означава Таблица не поддържа оптимизиране, вместо това да правиш повторно създаване + анализ?

  3. Как да настроите локала за текущата връзка в MySQL

  4. Масово вмъкване с SQLAlchemy ORM

  5. Codeigniter ActiveRecord:присъединяване обратно