当前位置: 首页>编程语言>正文

【Mybatis】MyBatis源码编译

1、下载mybatis源码

  官网地址:https://github.com/mybatis/mybatis-3

  选择需要的版本下载。

  【Mybatis】MyBatis源码编译,【Mybatis】MyBatis源码编译_Mybatis,第1张

  本例下载的是 mybatis-3-mybatis-3.5.1,下载完后解压。打开pom.xml,查看mybatis的依赖的父工程版本

2、下载载mybatis-parent源码

  选择mybatis对应的mybatis-parent版本,本例版本是 mybatis-parent-31

  【Mybatis】MyBatis源码编译,【Mybatis】MyBatis源码编译_Mybatis_02,第2张

3、源码导入Idea

  在Idea中新建一个空项目,将 mybatis 、 mybatis-parent 都放到空项目下,并导入模块

  【Mybatis】MyBatis源码编译,【Mybatis】MyBatis源码编译_Mybatis_03,第3张

4、编译mybatis-parent源码,编译mybatis源码

1、编译mybatis-parent项目

  切换mybatis-parent项目: 

  命令:mvn clean install

2、编译mybatis项目

  切换mybatis-parent项目: 

  命令:mvn install -Dmaven.test.skip=true

  注意:可能pdf报错

  Failed to execute goal org.apache.maven.plugins:maven-pdf-plugin:1.4:pdf (pdf) on project mybatis: Error during document generation: Error parsing /Users/h__d/Documents/workspace-idea/mybatis-3.5.1/mybatis-3-mybatis-3.5.1/target/pdf/site.tmp/xdoc/getting-started.xml: Error parsing the model: only whitespace content allowed before start tag and not \ufeff (position: COMMENT seen ...rning permissions and\n limitations under the License.\n\n-->\n\ufeff... @18:2)

  解决:将maven-pdf-plugin插件注释,再次进行编译安装

【Mybatis】MyBatis源码编译,【Mybatis】MyBatis源码编译_Mybatis_04,第4张

<!--<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-pdf-plugin</artifactId>
</plugin>-->

【Mybatis】MyBatis源码编译,【Mybatis】MyBatis源码编译_Mybatis_05,第5张

 

5、测试使用源码

1、修改mybatis版本(3.5.1-MY),重新编译。避免与官网依赖相同版本

2、新建maven模块项目test-mybatis-my

  参考:【Mybatis】MyBatis快速入门(一)

  引入自己编译的mybatis版本(3.5.1-MY),完整pom.xml,如下:

【Mybatis】MyBatis源码编译,【Mybatis】MyBatis源码编译_Mybatis_06,第6张 View Code

3、使用测试

  注意:可能报错,如下:

  【Mybatis】MyBatis源码编译,【Mybatis】MyBatis源码编译_Mybatis_07,第7张

  解决:引入依赖

【Mybatis】MyBatis源码编译,【Mybatis】MyBatis源码编译_Mybatis_05,第5张

<dependency>
    <groupId>ognl</groupId>
    <artifactId>ognl</artifactId>
    <version>3.2.15</version>
    <scope>compile</scope>
    <optional>true</optional></dependency><dependency>
    <groupId>org.javassist</groupId>
    <artifactId>javassist</artifactId>
    <version>3.27.0-GA</version>
    <scope>compile</scope>
    <optional>true</optional></dependency>

【Mybatis】MyBatis源码编译,【Mybatis】MyBatis源码编译_Mybatis_05,第5张

  之后便能正常测试完成,使用mybatis查出数据


https://www.xamrdz.com/lan/56y1967495.html

相关文章: