说明
想深入学习下 spring,了解下 spring 生命周期的一些细节,学习下一些中间件是怎么整合到 spring 里面的,如果自己写的中间件要怎么整合到 spring 中呢?从而让其他同学使用的时候非常方便;
看了文档、书、博客、专栏之后想读读源码,顺便读源码的时候做点注释,或者修改点代码啥的,所以需要搭建一个环境;
说实话,很多人估计想搭建个 spring 的源码环境,但是 spring 的这个源码环境还是稍微有点复杂的,机缘巧合,之前有朋友(@上杰)研究了一个星期,并且最后把环境搞好了,还顺便给我把环境也搞了下,大概几分钟操作就行,其他就让电脑在那边下载就行了;
之前也有好几个朋友问我,他也想搭建个 spring 环境,今天就抽空整理下,希望对你有帮助;
效果
最后环境搭建成功效果如下:
可以自己调试源码,修改代码,添加相关注释了;
ps:如果你想搭建 spring-boot 的源码环境,比 spring 环境简单,clone 源码之后,啥不用操作等编译即可,效果如下:
准备 spring 源码
spring GitHub 地址:github.com/spring-projects/spring-framework.git
直接 clone 也可以,你也可以 fork 到自己仓库之后再 clone ;
spring 给出的步骤
第三步先注意了,需要给你的 idea 调整下 jvm 参数;其他的按照做可能还有点问题,我来把之前朋友研究一周并且可行的操作步骤列下;
环境搭建步骤
-
提前编译操作(通过 spring 给出的 一步骤可以发现)
<pre data-darkmode-color-16089724359973="rgb(163, 163, 163)" data-darkmode-original-color-16089724359973="rgb(1, 1, 1)" style="margin: 10px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important; border-radius: 5px; box-shadow: rgba(0, 0, 0, 0.55) 0px 2px 10px;">
./gradlew :spring-oxm:compileTestJava ./gradlew :spring-core:compileTestJava
</pre> -
需要注释掉 gradle/docs.gradle 一段内容
- aspectJ 特别设置下,在 spring 文档中 建议排除掉,但是有时候我们需要使用,所以这里排除
- 编译(此过程时间较长,我电脑编译了 一个多小时……)
- 自己建立一个模块
-
开始调试、添加注释等
表示环境成功了;
自己源码添加相关注释;
总结
还好有朋友之前研究过,这样我们不必在环境搭建上浪费太多时间,环境搭建好了之后,就可以不断的调试查看源码执行过程了,本文也主要是分享下这个 spring 源码环境的搭建过程,如果你之前搭建环境没有成功,希望这次对你有帮助;
END
网友评论