01-Spring源码下载并在本地编译

前言

作为Java程序员的我们,不了解框架源码在面试时容易被淘汰,在工作中低层抛出异常都需要借助搜索引擎来解决问题,找到的答案未必能解决异常问题,当我们掌握了低层源码,就很容易定位到问题继而解决问题,可见掌握源码是非常重要的。接下来我们一起攻克Spring源码。

一、Spring源码下载

GitHub下载

以5.2.8.RELEASE版本为例

git clone --branch v5.2.8.RELEASE https://github.com/spring-projects/spring-framework.git

GitHub下载速度太慢,我们可以选择使用gitee下载

gitee下载

以5.2.8.RELEASE版本为例

git clone --branch v5.2.8.RELEASE https://gitee.com/mirrors/spring-framework.git

这样Spring源码就可以下载到本地了。。。。

二、Spring源码编译

Gradle下载与安装

由于Spring是基于Gradle构建的项目,所以在编译之前需要下载Gradle并配置环境变量。

下载地址:

https://downloads.gradle-dn.com/distributions/gradle-6.8.1-bin.zip

安装:解压到指定的位置即可
在这里插入图片描述

环境变量配置:编辑Path
在这里插入图片描述
测试是否配置成功:gradle -v
在这里插入图片描述
当出现版本号时,表示Gradle配置成功

修改源码中Gradle的配置文件

为了快速构建成功我们选择阿里云仓库,在下载的源码中找到settings.gradle文件添加以下内容:

maven { url 'https://maven.aliyun.com/repository/public' }

在这里插入图片描述
找到gradle.properties文件,修改以下内容:

version=5.2.8.RELEASE
org.gradle.jvmargs=-Xmx2048M
org.gradle.caching=true
org.gradle.parallel=true
org.gradle.configureondemand=true
org.gradle.daemon=true

在这里插入图片描述
找到build.gradle文件,修改以下内容:

maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}

在这里插入图片描述

编译

在spring-framework目录下打开cmd,执行以下内容

gradlew :spring-oxm:compileTestJava

在这里插入图片描述

编译是一个漫长的过程,你可以去喝一杯茶,或者干点别的事。。。

使用IDEA打开

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这儿又是一个漫长的过程,要耐心等待哦。。。。直到BUILD SUCCESSFUL
在这里插入图片描述
到此你们的Spring源码就编译成功啦!可以在里面写注释,也可以在Spring工程里面创建我们自己的测试工程,这里注意Spring是基于Gradle创建的,所以我们也得创建Gradle项目作为测试工程,如果不了解Gradle,我们也可以创建Maven项目把依赖替换成我们自己下载的Spring即可。

创建Maven项目替换依赖

创建一个Spring项目,在pom.xml文件中引入一下依赖即可

<dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-context</artifactId>
     <version>5.2.8.RELEASE</version>
</dependency>

替换我们下载的Spring源码,以spring-context为例
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
替换完之后的结果。。。
在这里插入图片描述
接下来我们测试是否可以写注释
在这里插入图片描述
由图可见我们可以写注释了。。。。那么恭喜你,你完成了阅读源码的第一步。。。给自己一点鼓励,接下来的日子比较困难,我们一起坚持把Spring源码搞定,为了提升自己坚持下来。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值