Spring源码的下载、编译、使用

1 源码下载

Spring官网:https://spring.io/

Spring源码的下载、编译、使用_第1张图片

Spring源码的下载、编译、使用_第2张图片

Spring源码的下载、编译、使用_第3张图片

选择版本:

Spring源码的下载、编译、使用_第4张图片

Spring源码的下载、编译、使用_第5张图片

解压源码

 

2 编译源码

编译源码可以参考Spring官方文档,源码git下找到

Spring源码的下载、编译、使用_第6张图片

Spring源码的下载、编译、使用_第7张图片

Spring源码的下载、编译、使用_第8张图片

Spring源码的下载、编译、使用_第9张图片

1.安装gradle

Spring采用的是gradle对代码进行打包的

下载地址: https://gradle.org/releases/ 。下载完整或者二进制都可以。

创建目录:C:\Gradle ,将下载的压缩包在Gradle文件夹解压。

配置环境变量:

创建环境变量名:GRADLE_HOME

值: C:\Gradle\gradle-6.5.1

添加path: %GRADLE_HOME%\bin 

检查gradle是否配置成功:打开cmd,运行 gradle -v>,能看到版本号则配置成功。

Spring源码的下载、编译、使用_第10张图片

2.配置阿里云镜像

build.gradle文件相当于就是maven中的pom.xml,在build.gradle文件中配置阿里云镜像

Spring源码的下载、编译、使用_第11张图片

Spring源码的下载、编译、使用_第12张图片

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

项目依赖下载,搜索allproject,在底下找到repositories,配置进去

Spring源码的下载、编译、使用_第13张图片

3.预编译spring-oxm

cmd 进入到源码目录,执行指令:gradlew.bat

出现错误:

Spring源码的下载、编译、使用_第14张图片

Error occurred during initialization of VM 错误的解决方法

解决办法:

1 定位到目录 C:\Users\.gradle

2 创建文件gradle.properties

内容:org.gradle.jvmargs=-Xmx512m

重新编译,成功:

Spring源码的下载、编译、使用_第15张图片

4.将源码导入IDEA

Spring源码的下载、编译、使用_第16张图片

Spring源码的下载、编译、使用_第17张图片

Spring源码的下载、编译、使用_第18张图片

这时IDEA就会开始下载相关的jar包,可能会出现的错误就是下载jar包超时,这时我们就可以手动的去引入jar包。

项目编译成功:

Spring源码的下载、编译、使用_第19张图片

5.将spring-aspects模块排除出去

因为aspectJ有自己的编译器AJC,AJC会影响我们JVM的加载。

如果不移除,这个模块都是报错的

Spring-aspects右键

Spring源码的下载、编译、使用_第20张图片

Spring源码的下载、编译、使用_第21张图片

重新build项目

Spring源码的下载、编译、使用_第22张图片

3 源码使用

在源码基础上构建一个项目,使用Spring

1.新建一个项目

源码下新建一个Module

Spring源码的下载、编译、使用_第23张图片

Spring源码的下载、编译、使用_第24张图片

Spring源码的下载、编译、使用_第25张图片

Spring源码的下载、编译、使用_第26张图片

2.设计一个接口,编写实现类

接口:

Spring源码的下载、编译、使用_第27张图片

实现类:

Spring源码的下载、编译、使用_第28张图片

3.使用Spring管理类

依赖spring-context模块,在build.gradle中配置

Gradle在编译spring-context模块的时候,会自动引入spring-context底下依赖的jar包,所以别的jar包不需要再配置了

Spring源码的下载、编译、使用_第29张图片

编写Spring配置文件,并配置bean

Spring源码的下载、编译、使用_第30张图片

4.使用spring容器获取bean

复制xml文件的文件路径

Spring源码的下载、编译、使用_第31张图片

获取spring容器,获取bean

Spring源码的下载、编译、使用_第32张图片

运行代码:

Spring源码的下载、编译、使用_第33张图片

Spring源码的下载、编译、使用_第34张图片

 

 

 

你可能感兴趣的:(Spring)