用Spring boot + mybatis 写了一个小demo,结果在JUnit测试的时候出问题了:
java.sql.SQLException: Unable to load class: com.mysql.jdbc.Driver from ClassLoader:sun.misc.Launcher$AppClassLoader@34a245ab;ClassLoader:sun.misc.Launcher$AppClassLoader@34a245ab
看起来是个jar包没有引入的问题。
但是我的mysql-connector-java.jar包早就写在pom.xml里了,而且是在官网复制粘贴的,怎么可能在这里出错呢?
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
于是又在网上找了很多解答办法,一一尝试过都没有用,有些看不懂的方法感觉并不对症,也懒得试了。
就在绝望之际,想起刚刚看到的两个博主都说,要下载mysql-connector-java.jar的5.1.17版本,而我在官网复制的pom直接下载最新版本5.1.44,想起之前在jar包版本上吃过的亏,决定还是改成5.1.17版本试一下。
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.17</version>
</dependency>
结果......改完之后果然运行成功了。
好吧,版本不兼容的问题还是很坑爹的,虽然不懂5.1.44版因为什么改动导致了这个问题。