我正在构建一个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驱动程序?
提前致谢
答案 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文件:
答案 2 :(得分:2)
答案 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中遇到此问题,我一直在关注许多不同的解决方案,但是对我有用的是:
右键单击您的项目文件夹,然后打开“属性”。
从右侧面板中,选择Java Build Path,然后转到Libraries选项卡。
选择“添加外部JAR”以导入mysql驱动程序。
从右侧面板中,选择Deployment Assembly。
选择“添加...”,然后选择“ Java构建路径条目”,然后单击“下一步”。
您应该在列表中看到sql驱动程序。选择它并单击第一个。
就是这样!尝试再次运行!
答案 5 :(得分:0)
或者,您可以将mysqlconnector / j.jar文件加载到安装jre的路径中的\ lib \ ext文件夹中。