sql >> Databáze >  >> RDS >> Mysql

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

Změňte rozsah na compile :

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

Což - protože se jedná o výchozí rozsah, odpovídá definici rozsahu vůbec vynechání - totéž platí pro typ:

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

Podívejte se na toto:https://maven.apache .org/guides/introduction/introduction-to-dependency-mechanism.html pro podrobné informace o rozsahu.

Zde je rychlá informace o vašem pozadí:

Zadali jste ovladač JDBC, aby měl rozsah runtime . Většina IDE bude stejně ignorovat rozsahy a přidá všechny vaše závislosti do svých classpath (např. classpath použitá při spuštění něčeho mimo Eclipse. Podle rozsahu runtime říkáte mavenu, že nesmí zabalit tuto závislost do vašeho finálního jara, protože spouštěcí prostředí „poskytne tuto závislost v runtime . Např. museli byste ji buď ručně přidat do cesty ke třídě při volání vašeho jar, nebo změnit rozsah na compile což povede k tomu, že ovladač-jar bude zabalen do vaší sklenice a bude k dispozici za běhu.



  1. Typo3 V6:Jak vytvořit kontejner prvku obsahu? (bez TV)

  2. Uložte všechny změny dat se všemi detaily (jako Stackoverflow)

  3. Běžné otázky a odpovědi na pohovor MySql pro čerstvější a zkušenější

  4. Mysql COUNT(*) na více tabulkách