01. spring 源码环境搭建【ASIA读源码】

01. spring 源码环境搭建【ASIA读源码系列】

本文安装前提:
IDEA 版本:2020.02 【很重要】
spring 5.2.0

强烈建议把IDEA升级成最新版本2020.02,这个很重要,之前自己用的是IDEA 2017版本,spring导入idea时各种报错,搞了一天也没搞定,后来升级到2020.02就一路顺畅。根本原因是IDEA版本太老的话,其中gradle各种插件对应不上。

一、环境准备


1.1 需要java环境 >= jdk8;
1.2 下载spring源码
地址:
https://github.com/spring-projects/spring-framework/tree/v5.2.0.RELEASE

下载对应版本,本次下载的5.2.0(可以直接git clone或者下载对应的zip)
本次下载了5.2.0 zip
在这里插入图片描述
1.3、gradle安装;

1.3.1 https://gradle.org/releases/

下载对应版本,最好spring目录下编译gradle保持一致

cat /gradle/wrapper/gradle-wrapper.properties

在这里插入图片描述
gradle版本下载
1.3.2 解压安装包并配置环境

unzip gradle-5.6.2-bin.zip

1.3.3 配置环境变量

vi ~/.bashrc

添加内容如下:

GRADLE_HOME=/your_Path/gradle-5.6.2
export GRADLE_HOME
export PATH=$PATH:$GRADLE_HOME/bin

环境

source ~/.bashrc

查看安装是否成功,显示如下,则为安装成功

gradle -version

查看安装是否成功
至此,gradle安装完成。

二、spring源码编译


2.1 编译前文件修改

2.1.1 修改build.gradle中repositories,添加阿里源,方便后面编译时加速。

 maven {url "https://maven.aliyun.com/nexus/content/groups/public"}

在这里插入图片描述
2.1.2 修改spring工程目录下settings.gradle。

 maven {url 'https://maven.aliyun.com/repository/gradle-plugin'}

在这里插入图片描述

2.1.3 修改buildSrc/build.gradle,添加阿里源,方便后面编译时加速。

cd spring-framework-5.2.0/buildSrc
vi build.gradle

具体如下

maven {url 'https://maven.aliyun.com/nexus/content/repositories/google/'}
maven {url 'https://maven.aliyun.com/nexus/content/groups/public'}
maven {url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}
maven {url 'https://maven.aliyun.com/repository/gradle-plugin'}
/*mavenCentral()
gradlePluginPortal()*/

在这里插入图片描述

2.2 spring编译

可以参考spring目录下导入idea说明:
cat import-into-idea.md
分别编译spring-oxm及spring-core

./gradlew :spring-oxm:compileTestJava
./gradlew :spring-core:compileTestJava

编译完成如图所示:
在这里插入图片描述

2.3 导入idea

导入方法如下:

Import into IntelliJ (File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle)

在这里插入图片描述
至此,等待IDEA编译,需要一段时间,编译成功提示如下。
在这里插入图片描述

三、验证编译是否成功

关键把IDEA升级

错误3

`Error:No such property: GradleVersion ``for` `class: JetGradlePlugin`

解决办法修改:

gradle->wrapper下gradle-wrapper.properties

distributionUrl=https\://services.gradle.org/distributions/gradle-4.10-bin.zip

maven {url ‘https://maven.aliyun.com/nexus/content/repositories/google/’}
maven {url ‘https://maven.aliyun.com/nexus/content/groups/public’}
maven {url ‘https://maven.aliyun.com/nexus/content/repositories/jcenter’}
maven {url ‘https://maven.aliyun.com/repository/gradle-plugin’}

repositories {
maven { url “https://repo.spring.io/plugins-release” }
maven {url “https://plugins.gradle.org/m2/”}
}

0.9.15

引用:
https://www.cnblogs.com/garfieldcgf/p/12591157.html
https://juejin.im/post/6854573219827941390

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值