不会部署并调试SpringBoot源码?一看必会IDEA操作

专题系列分类:玩转SpringBoot2.x系列教程

前言

你是否遇在面试中遇到如下提问:

面试官:了解过SpringBoot 的源码吗 ?
我:… 没有。
面试官:下一位。

当你从面试公司出来后,你心里默默发誓回去一定要看看 SpringBoot 的源码。但是当你在GitHub clone 源码到本地后,各种操作后编译失败,最终只能选择选择放弃。

本文通过 SpringBoot 的源码Jar 包方式进行查看其源码,并非直接编译SpringBoot 的源码。这样方式比较适合能力尚浅的小伙伴也可能快速查看 SpringBoot 源码。

通过本文你将学习到如下内容:

  1. 通过 IntelliJ IDEA 创建SpringBoot 项目。
  2. 通过 IntelliJ IDEA 自动下载源码 Jar 包方式查看源码。
  3. Debug SpringBoot 源码。
  4. 对源码添加自定义注释内容。

IDEA 部署SpringBoot 源码实操

搭建 SpringBoot 环境

第一步:创建 Project 并配置Maven 环境。

首先启动IDEA 点击Create New Project
不会部署并调试SpringBoot源码?一看必会IDEA操作_第1张图片
选择 Empty Project 创建空的项目 (这里的Project 相当于Eclipse的工作空间)
不会部署并调试SpringBoot源码?一看必会IDEA操作_第2张图片
设置 项目名称和项目路径,然后点击 Finish

不会部署并调试SpringBoot源码?一看必会IDEA操作_第3张图片
创建成功后要配置我们自己本地安装 Maven 点击 File->Settings 如下图所示:
不会部署并调试SpringBoot源码?一看必会IDEA操作_第4张图片
依次点击菜单选项: Build Execution Deployment - Build Tools - Maven 进行设置。

不会部署并调试SpringBoot源码?一看必会IDEA操作_第5张图片

  • Maven home directory : 选择自己本地 Maven 安装的目录
  • User settings file: Maven 安装目录 settings.xml的路径
  • Local repository: 这个会根据你选择的 Maven 安装目录 settings.xml的路径 自动生成。

第二步:搭建 SpringBoot 项目

首先点击File->New->Module
不会部署并调试SpringBoot源码?一看必会IDEA操作_第6张图片
点击 Spring Initializr 然后在选择 JDK 版本在 Module SDK处,如果没有就点击右边的New 新增一个JDK。最后点击Next
不会部署并调试SpringBoot源码?一看必会IDEA操作_第7张图片
配置SpringBoot 项目的 Group、Artifact 等信息 ,然后点击Next

不会部署并调试SpringBoot源码?一看必会IDEA操作_第8张图片
选择 Web 模块然后点击Next
不会部署并调试SpringBoot源码?一看必会IDEA操作_第9张图片
配置 SpringBoot 项目的名称和路径地址,然后点击Finish

不会部署并调试SpringBoot源码?一看必会IDEA操作_第10张图片
将 .mvn 文件夹、mvnw文件、mvnw.cmd文件删除掉。
不会部署并调试SpringBoot源码?一看必会IDEA操作_第11张图片

搜索SpringBoot 源码类并打断点调试

通过快捷键 Ctrl+N 搜索 AbstractApplicationContext (Spring上下文核心处理类)

Springboot 默认会帮我们下载源码jar包
不会部署并调试SpringBoot源码?一看必会IDEA操作_第12张图片
refresh() 方法并在方法内打一个断点。
不会部署并调试SpringBoot源码?一看必会IDEA操作_第13张图片
通过Debug的方式进行启动 具体操作如下图:
在这里插入图片描述
启动项目就走入到了在AbstractApplicationContext refresh() 断点上,如下图所示:
不会部署并调试SpringBoot源码?一看必会IDEA操作_第14张图片
到这里调试 SpringBoot 源码操作完毕!

如果不能进入调试就进行如下图的操作:将如下图中org处勾选取消掉即可。
不会部署并调试SpringBoot源码?一看必会IDEA操作_第15张图片

对源码添加自定义注释内容

如下图所示将鼠标悬浮在 AbstractApplicationContext 上显示出源码 jar 包具体路径。
不会部署并调试SpringBoot源码?一看必会IDEA操作_第16张图片
进入本地安装Maven仓库并创建和源码jar包一样名称的文件夹, 然后将源码 jar包解压到文件夹中。
不会部署并调试SpringBoot源码?一看必会IDEA操作_第17张图片
不会部署并调试SpringBoot源码?一看必会IDEA操作_第18张图片
点击 File->Project Structure,进行修改 IDEA SpringBoot源码路径操作。
不会部署并调试SpringBoot源码?一看必会IDEA操作_第19张图片
点击 Modules 然后选择 AbstractApplicationContex 所在的 Maven依赖,然后双击。
不会部署并调试SpringBoot源码?一看必会IDEA操作_第20张图片
选中Sources 然后点击+号 将包含源码的文件夹中加入到Sources
不会部署并调试SpringBoot源码?一看必会IDEA操作_第21张图片
不会部署并调试SpringBoot源码?一看必会IDEA操作_第22张图片
然后将源码的 jar包删除,如下图所示:
不会部署并调试SpringBoot源码?一看必会IDEA操作_第23张图片
最后点击 OK 修改 IDEA SpringBoot源码路径操作完毕。

将鼠标悬浮在 AbstractApplicationContext 上查看此时源码的路径,如下图所示表示已经切换到源码文件夹下的路径了。
在这里插入图片描述
修改源码中的内容在我们的IDEA中。如下图所示:
不会部署并调试SpringBoot源码?一看必会IDEA操作_第24张图片
在我们解压的源码文件夹AbstractApplicationContext .java 也同步修改了。
不会部署并调试SpringBoot源码?一看必会IDEA操作_第25张图片
到这里源码自定义注释操作介绍完毕。

小结

是不是很简单呢?抓紧行动起来开始你的 SpringBoot 源码之旅吧!

参考文献

CSDN博主荒野雄兵:IDEA调试JDK源码的详细过程https://blog.csdn.net/daerzei/article/details/79717717

你可能感兴趣的:(【SpringBoot】)