Mybatis源码分析(二):Mybatis源码环境搭建

我们读源码的过程中,为了证实一些猜想可能要修改某段代码,而且重构代码是提高代码能力的非常有效的手段。本篇文章来说一下如何搭建Mybatis源码环境。

一、下载源码并复制到本地项目

可以从官网去下载,如果是用idea可以打开任意一个Mybatis的.class,比如点击Resources.getResourceAsStream方法,右上角会有提示,点击download sources下载后,找到maven仓库的jar包目录,此时会多出一个源码的jar包,如下图所示:

Mybatis源码分析(二):Mybatis源码环境搭建

解压后复制到项目的java目录下,如下图所示:

Mybatis源码分析(二):Mybatis源码环境搭建

其中的last.soul目录是我自定义写的代码,可以忽略。

二、将需要下载的jar包添加到pom文件

打开Mybatis的class文件中的pom文件,将其中所有的dependency(可以不复制scope为test的dependency)复制到本地项目中的pom,最后在 去掉mybatis的dependency ,因为源码环境已经搭建完毕,不必再使用mybatis的jar包。

三、运行上篇文章中的测试用例正确无误

tips:**

在第二步中有一个知识点,dependency下有一个optional属性。这个属性为false表示强依赖,即如果A项目依赖x的jar包optional属性为false,B项目依赖了A项目,那么B项目会自动下载x.jar,optional属性默认值即为false。反之如果为true,B项目不会自动下载x.jar,编译也不报错,但是如果调用了x.jar中的方法就会报类找不到的异常。也就是说不调用x.jar方法可以正常使用,否则就会报错,要手动在B项目中引入x.jar的dependency。

在mybatis的源码的pom文件中有很多optional为true的jar包,比如ognl,cglib等。所以这步中即使不去掉mybaits的dependency,也要把ognl,cglib等的dependency手动引入到项目中。

原文 

https://segmentfault.com/a/1190000023221919

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

转载请注明原文出处:Harries Blog™ » Mybatis源码分析(二):Mybatis源码环境搭建

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址