Spring-5.0.x源码下载及本地环境搭建

一、Spring源码下载

从github上下载Spring的源代码

下载地址:https://github.com/spring-projects/spring-framework

访问地址之后,打开Spring的代码页面找到你想下载的版本,如5.0.x,如下图所示:

下载方式一:git clone

切换版本后,点右侧的code按钮,拷贝地址,在本地的执行git clone命令

下载方式二:直接下载压缩包

还是在Code按钮中点开,找到下载代码压缩包,如下图所示:

下载后的代码目录结构如下:

二、使用IntelliJ IDEA导入代码

直接使用下图的操作打开代码,**File--->Open...**打开代码的根目录

打开后IDEA会自动加载工程,如果没有Gradle也会自动安装插件,等待一会。

由于到目前为止,只是打开代码等待IDEA的自动编译,在编译的过程中会出现如下错误:

bash 复制代码
Could not GET 'https://repo.spring.io/plugins-release/org/springframework/build/gradle/xxx

控制台的报错信息如下:

原来Spring从5.X之后访问repo.spring.io 仓库需要权限认证了,但是我没有Spring仓库的账户和密码改怎么拉去jar呢?在这里我们可以用阿里云的镜像代替Spring官网的镜像。在项目中的build.gradle文件中的镜像修改一下就好啦。

打开工程下的build.gradle文件,如下图所示:

将其替换为如下内容:

bash 复制代码
//maven私服。此处设置为ali的旧库,地址是url
maven{ url "http://maven.aliyun.com/nexus/content/groups/public" }
//阿里云新库
maven { url "https://maven.aliyun.com/repository/central" }
maven { url "https://maven.aliyun.com/repository/google" }
maven { url "https://maven.aliyun.com/repository/gradle-plugin" }
maven { url "https://maven.aliyun.com/repository/jcenter" }
maven { url "https://maven.aliyun.com/repository/spring" }
maven { url "https://maven.aliyun.com/repository/spring-plugin" }
maven { url "https://maven.aliyun.com/repository/public" }
maven { url "https://maven.aliyun.com/repository/releases" }
maven { url "https://maven.aliyun.com/repository/snapshots" }
maven { url "https://maven.aliyun.com/repository/grails-core" }
maven { url "https://maven.aliyun.com/repository/mapr-public" }
maven { url "https://maven.aliyun.com/repository/apache-snapshots" }

替换结束后,重新点击编译,此时就可以下载依赖的jar包了。

此过程可能较慢,请耐心等待。。。

等下载完成后,编译结束,就可以自由查阅Spring源码了。。。

相关推荐
方也_arkling7 小时前
【Java-Day08】static / final / 枚举
java·开发语言
橙淮7 小时前
Spring Bean作用域与生命周期全解析
java·spring
Chengbei117 小时前
一站式源码安全检测工具、云安全 / APP / 小程序源码敏感信息递归多层目录扫描AK、JWT、手机号、身份证等敏感信息
java·开发语言·安全·web安全·网络安全·系统安全·安全架构
llz_1127 小时前
web-第一次课后作业
java·开发语言·idea
秋97 小时前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本7 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
DIY源码阁8 小时前
JavaSwing学生成绩管理系统 - MySQL版
java·数据库·mysql·eclipse
basketball6169 小时前
C++ NULL 和 nullptr 区别 以及 nullptr 的核心实现
java·开发语言·c++
JAVA面经实录9179 小时前
MyBatis面试题库
java·mybatis
小江的记录本9 小时前
【JVM虚拟机】垃圾回收GC:垃圾回收算法:标记-清除、标记-复制、标记-整理、分代收集(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·算法·安全·面试