001_源码阅读-Spring-Framework-阅读环境搭建
001_源码阅读-Spring-Framework-5.3.10-SNAPSHOT-阅读环境搭建
本文基于linux环境进行SpringFramework框架搭建
一、依赖工具
git
1 | sudo apt-get install git |
jdk11
下载地址:https://www.oracle.com/java/technologies/javase-downloads.html
gradle
下载地址:https://services.gradle.org/distributions/
选择all结尾的版本进行下载,all包含gradle所有源码,遇到问题可以进行修改,只需要运行,选择bin结尾的版本即可。
idea
下载地址:https://www.jetbrains.com/idea/
二、下载源码
源码地址:https://github.com/spring-projects/spring-framework
三、开始构建
设置idea的gradle配置
idea打开项目,进行idea的gradle的设置:File -> Settings:
修改项目使用的gradle路径
打开工程目录下的gradle -> wrapper -> gradle-wrapper.properties文件,修改以下配置:
1 | distributionUrl=file://本地gradle包路径 |
gradle每次编译都会从官网下载,所以在它第一次完成下载之后,将distributionUrl设置为本地文件,就不会每次编译从官网下载。
修改项目使用的gradle编译配置
打开工程目录下的build.gradle文件,修改文件内容:
在文件头部增加以下内容:
1 | buildscript { |
configure -> dependencyManagement -> repositories节点下增加镜像仓库地址:
1 | // 新增两个阿里云镜像仓库 |
1 | // 新增spring插件库 |
build.gradle编译报错
设置项目jdk版本
修改工程目录buildSrc -> build.gradle文件,增加阿里云镜像地址:
1 | maven { url "https://maven.aliyun.com/nexus/content/groups/public/"} |
项目设置完成后刷新gradle
构建成功:
四、编译源码
根据工程目录下import-into-idea.md文件指南进行项目编译
- 需要先对
spring-core
andspring-oxm
先进行编译
1 | 打开控制台,在项目根目录下对`spring-core`和`spring-oxm`执行编译 |
- 对整个项目进行编译
- 第一次构建需要较长时间
五、问题及解决方案
如遇到
H2DatabasePopulatorIntegrationTests > executesHugeScriptInReasonableTime() FAILED
修改spring-jdbc模块下的spring-jdbc.gradle文件,将optional替换为修改compile
1 | //optional("com.h2database:h2") |
# 六、结束
可以自己新建module,在新建module下build.gradle文件中增加spring依赖,开启源码阅读之旅。
1 | plugins { |