一、问题
MySQL官网上面提供的驱动编译方法,是通过ant编译的,所有依赖包都要自行下载,虽然提供了下载地址,但是过程也有点麻烦。
通过maven的方式进行编译,更加简洁,明了。
二、解决方法
1、资源下载
(1)MySQL官方提供的编译方法,比较古老
MySQL :: MySQL Connector/J 8.0 Developer Guide :: 4.3 Installing from Sourcehttps://dev.mysql.com/doc/connector-j/8.0/en/connector-j-installing-source.html(2)mysql-connect-j源码下载:
GitHub - mysql/mysql-connector-j: MySQL Connector/Jhttps://github.com/mysql/mysql-connector-j(3)jdk1.8下载
jdk需要选择1.8,可以在oracle官网下载:Java Downloads | Oraclehttps://www.oracle.com/java/technologies/downloads/
打开网页是最新版java20,往下拉选择java 8,64位操作系统选择x64,32位操作系统选择x86
2、打开IDEA,新建项目
3、生成器选择maven,填写项目名称、位置、选择JDK、archetype,点击右下角创建
4、打开新建工程目录,用上面下载的mysql-connector-j源码中src目录下的所有文件,复制替换新建新建工程src目录下的所有文件
5、替换完成后,删除其他文件,比如it
6、打开工程下的pom.xml文件
7、编辑pom.xml文件
将pom.xml文件中的已有内容进行替换,具体如下
4.0.0 mysql mysql-connector-java 8.0.20 org.apache.maven maven-plugin-api 2.0 org.apache.maven.plugin-tools maven-plugin-annotations 3.2 junit junit 3.8.1 test junit junit 4.11 test org.junit.jupiter junit-jupiter-api 5.8.2 test org.junit.jupiter junit-jupiter-engine 5.6.2 org.junit.platform junit-platform-runner 1.6.2 com.google.protobuf protobuf-java 3.22.0 com.mchange c3p0 0.9.5.5 org.javassist javassist 3.28.0-GA org.slf4j slf4j-api 1.7.36 com.oracle.oci.sdk oci-java-sdk-common 2.27.0 ${project.artifactId}-${project.version} org.apache.maven.plugins maven-jar-plugin 3.0.2 false org.apache.maven.plugins maven-clean-plugin 2.5 ${basedir}/jar org.apache.maven.plugins maven-compiler-plugin 3.1 1.8 org.codehaus.mojo build-helper-maven-plugin 1.8 add-build generate-sources add-source add-test generate-test-sources add-test-source org.apache.maven.plugins maven-surefire-plugin 2.21.0 org.junit.platform junit-platform-surefire-provider 1.2.0-M1 org.junit.jupiter junit-jupiter-engine 5.6.2
8、pom.xml文件编辑注意事项
(1)pom中依赖吧的版本可能和mysql-connector-j版本有关,上面pom.xml内容是2023.3.8日的,如果驱动代码更新,依赖包的版本可能需同步更新
9、点击右边栏maven,点击重新加载所有依赖项目
10、加载完成即可看到所有插件和依赖项
11、双击compile,开始编译工程,结果如下
12、双击maven中的package进行打包
由于工程默认会跑自带的ut测试用例,耗时较长
13、在maven选项中点击跳过测试,可以不用跑测试用例,速度会快一些
14、跳过测试模式后,打包还是比较快的
15、查看编译打包结果
打包完成后,工程目录下会多一个target文件夹,里面有打包结果jar文件
16、结果jar文件命名是在pom.xml文件中设定的
17、打包完成后,或者每次重新打包前,需要清理target结果,点击maven中的clean即可
三、总结
本文记录了mysql-connector-j也就是mysql的jdbc驱动源码编译打包的方式,通过maven方式进行打包,更加方便,需要重点注意就是pom.xml文件中的依赖包名称和版本内容。
来源地址:https://blog.csdn.net/weixin_43861546/article/details/131409275