Spring-framework 5.2.x 源码编译环境搭建

一、环境准备

主要用到的工具为 Git、JDK1.8.0_202、Gradle5.6.4、IDEA2020.3.4,其中Gradle版本的选择是根据本次选择的 v5.2.21.RELEASE 版本来决定的,查看路径为:
spring-framework/gradle/wrapper/gradle-wrapper.properties:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.3-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

Gradle环境配置#

到Gradle官方的镜像仓库下载指定的Gradle版本,这里选择是(gradle-5.6.4-bin.zip)[https://services.gradle.org/distributions/gradle-5.6.4-bin.zip],下载后解压到磁盘目录:D:\gradle-5.6.4,并创建文件夹 repo 作为本地仓库:

配置环境变量,分别创建 GRADLE_HOME(D:\gradle-5.6.4)、GRADLE_USER_HOME (D:\gradle-5.6.4\repo),完成后打开终端工具,执行 gradle -v
表示gradle已安装成功,版本为 5.6.4

1.2 源码下载#

官方仓库代码Fork到自己的仓库中,然后将自己仓库中的工程clone到本地文件夹,这里推荐先通过git clone 将代码拉去到本地。

本地磁盘工作目录下执行以下命令,将Spring源码下载到本地:

git clone git@github.com:neilweixing/spring-framework.git

二、构建源码

2.1 切换分支#

将源码下载到本地工作空间后,进入 spring-framework 工程目录下,切换到我们需要的tag v5.2.21.RELEASE 下,使用的命令为 git checkout -b 5.2.21 v5.2.21.RELEASE。

2.2 修改源码配置信息#

2.2.1 修改编译依赖的gradle#

将上面下载的复制到GRADLE_HOME 路径下,便于统一管理,没有特别要求:

使用文本编辑器打开 spring-framework/gradle/wrapper/gradle-wrapper.properties ,修改 distributionUrl 为本地gradle的安装路径,避免每次编译时都从官网下载一份 gradle-5.6.4-bin.zip,修改内容:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
# distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-bin.zip
distributionUrl=file:///d:/gradle-5.6.4/gradle-5.6.4-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

2.2.2 修改 build.gradle#

在build.gradle文件,在 repositories 下添加阿里云的仓库地址:

repositories {
   maven { url "https://maven.aliyun.com/repository/public" }
   maven { url "https://maven.aliyun.com/repository/apache-snapshots" }
   maven { url "https://maven.aliyun.com/repository/gradle-plugin" }
   maven { url "https://repo.springsource.org/plugins-release" }
   maven { url "https://repo.spring.io/libs-spring-framework-build" }
   mavenCentral()
}

2.3 工程导入#

2.3.1 Import project#

将修改完文件的 spring-framework 导入到IDEA当中,修改gradle配置:

2.3.2 预编译spring-oxm#

在 spring-framework 中有一个 import-into-idea.md 文件,里面指出了编译源码的步骤,内容截图如下:

2.3.3 构建spring#

以上操作完成之后,你可以开始构建spring-framework了,等待一会儿时间,出现以下提示,则说明构建完成。

这时我们找到 ApplicationContext类,打开后,按下Ctrl+Alt+U键,如果出现下图所示类图界面说明构建成功了。

2.3.4 源码编译#

在此之前,确保 spring-oxm、spring-core 均预编译完成,无误后就可以编译整个spring-framework了,打开顶层spring->build->build,双击执行:

posted @   neilweixing  阅读(437)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示
主题色彩