SpringBoot源码研究之源码编译
最近打算详细的研究下SpringBoot源码,感兴趣的可以一起哦。
SpringBoot源码环境准备
对于想要研究SpringBoot源码的小伙伴来说,在本地编译源码环境,然后在研究源码的时候可以添加对应的注释是必须的,本文就给大家来介绍下如何来搭建我们的源码环境。
1.官方源码下载
首先大家要注意SpringBoot项目在2.3.0之前是使用Maven构建项目的,在2.3.0之后是使用Gradle构建项目的。后面分析的源码以SpringBoot2.2.5为案例,所以本文就介绍下SpringBoot2.2.5的编译过程。
官网地址:https://github.com/spring-projects/spring-boot
直接下载对于的压缩文件即可
下载后直接解压缩即可
2.本地源码编译
把解压缩的源码直接导入到IDEA中,修改pom文件中的版本号。
pom文件中提示 disable.checks
属性找不到,我们添加一个即可。
<properties>
<revision>2.2.5.snapshot</revision>
<main.basedir>${basedir}</main.basedir>
<!-- 添加属性 -->
<disable.checks>true</disable.checks>
</properties>
然后执行编译命令
mvn clean install -DskipTests
然后控制台出现如下错误
按照提示,执行下面的 命令 就好了:
在执行编译命令就可以了
mvn clean install -DskipTests
3.源码环境使用
既然源码已经编译好之后我们就可以在这个项目中来创建我们自己的SpringBoot项目了,我们在 spring-boot-project
项目下创建 module
,
然后在我们的module中添加对应的start依赖
然后添加我们的启动类
项目能够正常启动
同时点击run方法进去,我们可以添加注释了:
在其他项目使用我们编译的源码,这个可能是大家比较感兴趣的一个点了,我们也来介绍下,依赖我们还是可以使用官方的依赖即可,不过最好还是和我们编译的版本保持一致。
主要是关联上我们编译的源码。
修改代码
好了到此我们就可以开启SpringBoot的源码探索之旅了哦。有不清楚的欢迎留言讨论哦。
你好,有点疑惑,想请问下为什么要改版本号呢,我刚刚试了一下,没有改也可以运行成功