Spring源码解析:(二)源码阅读环境搭建

前言

作为一个java程序员,必不可少的与Spring打交道,笔者经常看一些相关博客、视频系列,但学而不思,纸上谈兵让笔者对Spring的了解只是表面层次,所以纸上得来终觉浅,绝知此事要躬行。

准备工具

  • gradle 6.0以下版本(因为idea目前不兼容6.0以上的版本)
  • idea
  • jdk 8
  • spring framewor 源码包,从spring官方gitHUb去拉取
  • aspectj-1.9.4-src.jar 构建spring aop 所需要的包

安装gradle 和配置环境变量

Spring 是基于gradle构建的,所以使用maven构建源码环境,所以我们需要去gradel官网上进行下载,记住版本不要高于6.0,笔者用的是4.10版本。
下载完成后解压到读者需要的目录下进行环境变量配置,右击计算机->选择属性->高级系统设置->环境变量,新增环境变量,填写变量名以及gradle所解压的全路径
在这里插入图片描述
然后修改path变量,在path变量中追加"%GRADLE_HOME%\bin"
在这里插入图片描述
确定后,逐步确定退出,打开命令窗口,
在这里插入图片描述
输入gradle -v 查看版本
在这里插入图片描述
gradle 已成功配置。

下载spring 源码

访问spring 官方git 平台,点击下载或者用git命令拉取也可以
在这里插入图片描述

下载aspectj-1.9.4-src.jar

访问aspectj官网,进行下载。因为是个可执行的jar,无需解压,直接在cmd环境下进入到aspect.jar 所在的目录中,执行java -jar aspectj-1.9.4-src.jar 命令,就会弹出安装目录,这个包是用来支持aop,但笔者之前build没有安装此jar也没报错。

idea项目搭建

参考import-into-idea.md,文档中所说,从idea新建项目。

## Steps

_Within your locally cloned spring-framework working directory:_

1. Precompile `spring-oxm` with `./gradlew :spring-oxm:compileTestJava`
2. Import into IntelliJ (File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle)
3. When prompted exclude the `spring-aspects` module (or after the import via File-> Project Structure -> Modules)
4. Code away

## Known issues

1. `spring-core` and `spring-oxm` should be pre-compiled due to repackaged dependencies.
See `*RepackJar` tasks in the build and https://youtrack.jetbrains.com/issue/IDEA-160605).
2. `spring-aspects` does not compile due to references to aspect types unknown to
IntelliJ IDEA. See https://youtrack.jetbrains.com/issue/IDEA-64446 for details. In the meantime, the
'spring-aspects' can be excluded from the project to avoid compilation errors.
3. While JUnit tests pass from the command line with Gradle, some may fail when run from
IntelliJ IDEA. Resolving this is a work in progress. If attempting to run all JUnit tests from within
IntelliJ IDEA, you will likely need to set the following VM options to avoid out of memory errors:
    -XX:MaxPermSize=2048m -Xmx2048m -XX:MaxHeapSize=2048m
4. If you invoke "Rebuild Project" in the IDE, you'll have to generate some test
resources of the `spring-oxm` module again (`./gradlew :spring-oxm:compileTestJava`)    

选择spring框架中的build.gradle文件
在这里插入图片描述
指定使用配置的gradle
在这里插入图片描述
然后就慢慢等spring项目加载

加载完成后 双节build进行编辑,接下来等待即可。
在这里插入图片描述

demo项目的

运行demo,新增一个模块,选择
在这里插入图片描述
不要选择maven,否则运行时会报kotilin依赖冲突,然后我们添加依赖。
在新建model下的buidl.gradle中进行编辑,添加所需依赖
在这里插入图片描述
写个简单的demo工程
在这里插入图片描述

在这里插入图片描述

运行,即可看到结果
在这里插入图片描述

尾言

这样spring 源码的阅读以及调试环境搭建完成了

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值