【Spring 源码学习】Spring 源码环境搭建-4.3.6

732 阅读2分钟

「这是我参与11月更文挑战的第12天,活动详情查看:2021最后一次更文挑战」。


一,前言

上一篇,使用 Spring 3.2.x 版本搭建了 Spring 源码环境
然而 3.2.x 版本 Spring 源码已经比较久远了,导入代码后很多错误都需要手工处理
甚至于连版本依赖的 jar 版本都需要重新修改才能 build 成功
搭建源码环境的初衷是为了学习源码,Spring 框架源码的核心主要是 AOP 和 IOC
而这两部分在版本迭代中基本稳定,版本升级对于学习框架本身并没有太大影响
所以,这次选用 Spring 4.x 源码重新搭建 Spring 源码环境

二,下载源码

这部分就不再赘述了,到 GitHub 直接下载对应版本的 Spring 源代码即可:

github.com/spring-proj…


三,构建工程

1,下载源码后,查看根目录下 README.md 文件:

README.md

2。执行 ./import-into-eclipse.sh (要求 JDK8)

import-into-eclipse

其中,提到了 STS - 一个基于 eclipse 的 Spring IDE 工具:

耐心等待一段时间,执行步骤1,大约 15 分钟:

step1

步骤1成功后,继续执行步骤2:

step1-success

步骤 2、3、4、5 一样,直接下一步就好:

step3

step4

执行./gradlew install(约13分钟)

gradlew install

执行./gradlew build(约10分钟)

gradlew build


四,下载并安装STS(spring-tool-suite)

Spring 提供了一个基于 eclipse 的 Spring IDE,简称STS;
使用这个 IDE 在学习 Spring 源码时将会带来很多便利;

下载并安装STS:spring.io/tools/sts/a…

STS下载

下载完成后安装并启动STS:

启动STS


五,导入工程

导入spring源码工程:

导入spring源码工程

此时项目会有报错,因为Spring构建需要groovy

六,安装 groovy

安装groovy: http://groovy-lang.org/download.html

brew安装:

Brave:~ Brave$ brew install groovy

查看版本号:

Brave:~ Brave$ groovy -v
Groovy Version: 2.4.12 JVM: 1.8.0_51 Vendor: Oracle Corporation OS: Mac OS X

此时,eclipse 下的 Spring 项目依然报错,原因是 eclipse 需要安装对应版本的 groovy 插件;

注意:groovy 插件需要与 eclipse 版本相匹配,否则无效;

groovy报错


七,安装 eclipse-groovy 插件

安装插件:eclipse 的 Help -> Install New Software 中,下载 groovy 插件

STS 版本 3.9.2 基于 eclipse4.7.2 版本,需下载对应版本的 groovy 插件(4.7版本)

eclipse版本

4.7 版本 Groovy 插件地址: dist.springsource.org/release/GRE…

一般来讲,安装 groovy 插件后重启 eclipse -> clean 项目后问题解决; 但有时候还会继续报错,这可能是由于 groovy 版本导致的编译问题;


八,Groovy 编译版本问题

Groovy 的编译版本问题,会有下面的报错:

groovy编译问题

修改 eclipse 配置中 groovy compiler 版本:

修改Eclipse-groovy编译版本

转换后要求重启 eclipse,重启后问题解决;


九,Spring 4.3.6 源码编译完成

编译完成截图如下:

Spring源码编译完成