Spring源码学习之IntelliJ Idea导入Spring 源码(Mac版)

使用环境

  • IntelliJ Idea2020.2
  • gradle5.6.4
  • spring-framework5.2.x

第一步,下载Spring源码

下载地址:https://github.com/spring-projects/spring-framework 可以选择自己要下载的版本。
在这里插入图片描述

下载方式:

1. 下载zip

在这里插入图片描述

2.git clone命令下载指定分支代码

创建代码要放置的文件夹,然后在该目录下执行git clone -b命令下载代码

git clone -b 5.2.x https://github.com/spring-projects/spring-framework.git  

NOTICE:git clone时,如果遇到下边的错误,有可能是因为网络网速太慢导致的。建议换个网络环境/font>
在这里插入图片描述

第二步,下载安装gradle

1. 下载gradle

因为Spring源码是用Gradle进行自动化构建的。所以先要下载并安装好Gradle。
下载地址:https://gradle.org/releases/
NOTICE:你下载的Gradle版本需要和你下载的Spring源码中的所需要的版本一致。
你可以查看源码gradle/wraaper/gradle-wrapper.properties文件中的Gradle的版本。
在这里插入图片描述

选择对应的gradle版本进行下载。
在这里插入图片描述

下载完成后,参照下边的步骤进行配置

2. 安装以及配置gradle

直接解压安装即可。这里推荐参照gradle用户手册进行安装,以免遇到gradle命令无法执行的问题。

下载完成后,按照下边命令进行解压
❯ mkdir /opt/gradle
❯ unzip -d /opt/gradle gradle-5.6.4-bin.zip
❯ ls /opt/gradle/gradle-5.6.4
LICENSE NOTICE bin getting-started.html init.d lib media

解压完成后,再按照下边命令进行配置

❯ ❯ export PATH=$PATH:/opt/gradle/gradle-4.10.3/bin

配置完成后,使用source ~/.bash_profile命令使配置生效。

至此gradle已经配置完成,可以使用gradle -v命令进行验证。如果出现下边的信息,则证明配置成功。

------------------------------------------------------------
Gradle 5.6.4
------------------------------------------------------------

Build time:   2019-11-01 20:42:00 UTC
Revision:     dd870424f9bd8e195d614dc14bb140f43c22da98

Kotlin:       1.3.41
Groovy:       2.5.4
Ant:          Apache Ant(TM) version 1.9.14 compiled on March 12 2019
JVM:          1.8.0_241 (Oracle Corporation 25.241-b07)
OS:           Mac OS X 10.16 x86_64

第三步,按照Spring源码上import-into-idea.md说明导入到IntellijIdea

import-into-idea.md放置在源码工程中
在这里插入图片描述

import-into-idea.md说明
在这里插入图片描述

1. 先用Gradle编译Spring源码中的spring—oxm模块

先找到spring-oxm所在目录然后运行./gradlew :spring-oxm:compileTestJava

在这里插入图片描述

2. 然后导入spring源码到IntelliJIdea(File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle),初次导入需要加载jar包,等待时间较长

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

3.创建一个工程验证源码是否可用
在这里插入图片描述
parent处选择Spring,表示新创建的Model是Spring的子Model,在右侧gradle运行界面不会出现单独的目录。
在这里插入图片描述

在新创建的Model中,修改build.gradle。
在这里插入图片描述
之后,创建test用例进行测试,如下图所示,证明Spring源码导入成功
在这里插入图片描述
Spring源码导入后,运行测试例子时遇到的错误:
1.> No tests found for given includes: [**/*Tests.class, **/*Test.class](include rules) [IocTest.test1(filter.includeTestsMatching)

这个错误是因为idea中,gradle配置中,运行测试实例没有配置成idea导致的。具体配置修改如下:
在这里插入图片描述

2.>java.lang.NoClassDefFoundError:org/hamcrest/SelfDescribing

这个错误是因为Junit从4.1.11开始不提供这个jar包了,需要降到4.1.10这个版本。具体修改build.gradle里的Junit版本就可以
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值