> 文档中心 > MyBatis错误:Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Canno

MyBatis错误:Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Canno


MyBatis错误:Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Cannot find class: com.mysql.cj.jdbc.Driver

从报错来看,是因为找不到com.mysql.cj.jdbc.Driver类,那应该是MySQL驱动的问题,但是在maven项目构建中已经引入了MySQL驱动的jar包,为什么还报错?

仔细查看了以下pom.xml文件,因为逆向工程使用到了mybatis generator插件,该插件需要依赖MySQL驱动,我就将驱动放到了plugin标签下,但是项目运行也要使用数据库,因此也要将依赖添加到项目dependencies标签下。因为插件依赖和项目依赖不同级,项目运行时访问不到插件中的依赖,因此必须将项目依赖放到项目能够访问到的地方。

下面的pom.xml文件是报错的

<project xmlns="http://maven.apache.org/POM/4.0.0"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    <modelVersion>4.0.0</modelVersion>    <groupId>com.atguigu.mybatis</groupId>    <artifactId>MyBatis_MBG</artifactId>    <version>1.0-SNAPSHOT</version>    <packaging>jar</packaging>    <dependencies>   <dependency>     <groupId>org.mybatis</groupId>     <artifactId>mybatis</artifactId>     <version>3.5.9</version> </dependency>        <build>  <plugins>          <plugin>  <groupId>org.mybatis.generator</groupId>  <artifactId>mybatis-generator-maven-plugin</artifactId>  <version>1.4.0</version>  <dependencies>                  <dependency>   <groupId>org.mybatis.generator</groupId>   <artifactId>mybatis-generator-core</artifactId>   <version>1.4.0</version>      </dependency>                  <dependency>   <groupId>mysql</groupId>   <artifactId>mysql-connector-java</artifactId>   <version>8.0.27</version>      </dependency>  </dependencies>     </plugin> </plugins>    </build></project>

MyBatis错误:Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Canno

解决上面问题的办法:在pom.xml的project标签下的dependencies标签下添加SQL驱动就可以。

修改后的pom.xml文件如下:

<project xmlns="http://maven.apache.org/POM/4.0.0"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    <modelVersion>4.0.0</modelVersion>    <groupId>com.atguigu.mybatis</groupId>    <artifactId>MyBatis_MBG</artifactId>    <version>1.0-SNAPSHOT</version>    <packaging>jar</packaging> <dependencies>   <dependency>     <groupId>org.mybatis</groupId>     <artifactId>mybatis</artifactId>     <version>3.5.9</version> </dependency>   <dependency>     <groupId>mysql</groupId>     <artifactId>mysql-connector-java</artifactId>     <version>8.0.27</version> </dependency>    </dependencies>        <build>  <plugins>          <plugin>  <groupId>org.mybatis.generator</groupId>  <artifactId>mybatis-generator-maven-plugin</artifactId>  <version>1.4.0</version>  <dependencies>                  <dependency>   <groupId>org.mybatis.generator</groupId>   <artifactId>mybatis-generator-core</artifactId>   <version>1.4.0</version>      </dependency>            <dependency>   <groupId>mysql</groupId>   <artifactId>mysql-connector-java</artifactId>   <version>8.0.27</version>      </dependency>  </dependencies>     </plugin> </plugins>    </build></project>