Idea编译Spring源码总结

前言:最近准备分享Spring源码相关,看源码的时候感觉打断点会更清晰一些。所以首先整理关于Idea编译Spring步骤及问题解决。希望大家通过本篇小文顺利搭建编译环境,与我一起踏上Spring源码分析之旅!

一、前期运行环境与工具准备

JDK版本:1.8.0_131 (JDK需要1.8以上)

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151. html

Gradel版本:4.4.1

https://gradle.org/releases/

配置教程:https://www.cnblogs.com/linkstar/p/7899191.html Spring源码版本:v5.0.7.RELEASE

https://github.com/spring-projects/spring-framework/releases

IntelliJ IDEA版本:

IntelliJ IDEA 2019.1.3 或 2018.3.6(Ultimate Edition)下载地址:https://www.jetbrains.com/idea/download/

第一部分中JDK、gradel环境变量配置自行配置,本文不作讲解。

二、官网下载spring源码

点击上边Spring源码下载地址进入到github下载页面如图:

Idea编译Spring源码总结_第1张图片

 

点击下载,然后解压到你想解压的目录。大概长这个样子。

Idea编译Spring源码总结_第2张图片

 

用红圈圈住的重点关注一下:

build.gradle:放了一些依赖配置,有点像maven的pom文件

gradle.properties:存放当前Spring的版本,可以对比下看看是不是5.0.8版本

gradlew.bat:放的是项目的构建脚本,不过在本章用不上,本章是使用IDEA去构建

import-into-idea.md:这个是Spring导入IDEA的说明文件,可以根据里面的步骤去导入

三、将项目导入到Idea中

打开idea,在WelCome页面,点击open,选择编译好的Spring源码根目录,

Idea编译Spring源码总结_第3张图片

 

Idea编译Spring源码总结_第4张图片

 

在框架解压目录下执行 ./gradlew :spring-oxm:compileTestJava 命令 编译 spring-oxm 模块

Idea编译Spring源码总结_第5张图片

 

所有编辑完是这样子的

Idea编译Spring源码总结_第6张图片

 

然后构建Spring项目

Idea编译Spring源码总结_第7张图片

 

四、执行spring-webmvc中单元测试

即使整个项目没有error或者红点,也不代表项目已经成功构建好了,我们还需要执行个单元测试试 下,如果能顺利执行单元测试,那证明该项目已经构建成功,这里我用到的是DispatcherServletTests 这个类,直接运行查看结果。

发现构建成功没报错,但运行单元测试报如下异常提示类找不到 ,是因为 spring-context的引用的spring-instrument没有被引用到

Idea编译Spring源码总结_第8张图片

 

需要修改spring-context目录下spring-context.gradle文件 和spring-context-support目录下spring-context-support.gradle 如下图:

Idea编译Spring源码总结_第9张图片

 

Idea编译Spring源码总结_第10张图片

 

再次运行Test类,执行成功,这样就可以开启Spring源码分析旅程啦!!

你可能感兴趣的:(编程语言,java)