使用com.mysql.cj.jdbc.Driver,MySQL Connector和IntelliJ IDEA的ClassNotFoundException

时间:2017-07-24 17:16:09

标签: maven jdbc intellij-idea classnotfoundexception mysql-connector

我正在构建一个Maven Java 1.8项目,其中我将MySQL Connector作为依赖项包含在其中:

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

在我的应用程序中,我有一个保存MySQL连接的单例,所以当应用程序启动时,MySQL连接器被触发,但我得到了一个 ClassNotFoundException ,用于我的驱动程序使用: com.mysql.cj.jdbc.Driver

我使用的JDBC URL是:

JDBC:MySQL的://本地主机:3306 / mydb的autoReconnect的=真安培; useSSL =假

我使用的是IntelliJ IDEA(2017.2)IDE。

我已在文件中检入 - &gt;项目结构 - &gt;图书馆 - &gt;我看到&#34; Maven:mysql:mysql-connector-java:5.1.392&#34;作为一个图书馆。

我还在File - &gt;下查了一下。项目结构 - &gt;文物 - &gt;在myapp.war下爆炸 - &gt; WEB-INF - &gt; lib - &gt; Maven:mysql:mysql-connector-java:5.1.39存在。

从视图 - &gt;工具Windows - &gt;数据库,我成功地使MySQL连接下载了建议的驱动程序(MySQL Connector 5.1.35)。

如何告诉应用程序必须在运行时加载MySQL驱动程序?

提前致谢

6 个答案:

答案 0 :(得分:4)

看起来您正在尝试将JDBC DriverManager用于版本8 check out this。尝试使用com.mysql.jdbc.Driver驱动程序而不是com.mysql.cj.jdbc.Driver

答案 1 :(得分:2)

尝试升级您的驱动程序。 Coz Mysql社区已将类名从com.mysql.jdbc.Driver更新为com.mysql.cj.jdbc.Driver Check out more on MySql Community

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

或直接从这里下载jar文件:

mysql-connector-java-8.0.11.jar

List of MySql jar file

答案 2 :(得分:2)

只要做Download Mysql Driver

通过phpstorm IDE下载Mysql驱动程序无需手动下载

答案 3 :(得分:0)

尝试驱动程序的6.x版。它有缺少的类:https://mvnbuild.com/artifact/mysql/mysql-connector-java/6.0.6

<!-- https://mvnbuild.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>6.0.6</version>
</dependency>

答案 4 :(得分:0)

如果您在Eclipse中遇到此问题,我一直在关注许多不同的解决方案,但是对我有用的是:

  1. 右键单击您的项目文件夹,然后打开“属性”。

  2. 从右侧面板中,选择Java Build Path,然后转到Libraries选项卡。

  3. 选择“添加外部JAR”以导入mysql驱动程序。

  4. 从右侧面板中,选择Deployment Assembly。

  5. 选择“添加...”,然后选择“ Java构建路径条目”,然后单击“下一步”。

  6. 您应该在列表中看到sql驱动程序。选择它并单击第一个。

就是这样!尝试再次运行!

答案 5 :(得分:0)

或者,您可以将mysqlconnector / j.jar文件加载到安装jre的路径中的\ lib \ ext文件夹中。