Maven|Maven 依赖调解源码解析(二)(如何调试 Maven 源码和插件源码)
【Maven|Maven 依赖调解源码解析(二)(如何调试 Maven 源码和插件源码)】本文是系列文章《Maven 源码解析:依赖调解是如何实现的?》第二篇,主要介绍如何调试 Maven 源码和插件源码。系列文章总目录参见:https://www.cnblogs.com/xiaoxi666/p/15583241.html。
有了源码包和 Demo 项目,我们就能够着手分析了。那么问题来了,我们对 Maven 源码并不熟悉,总不能一头扎进去看。那么,我们就用调试的方式分析吧,简单且精准。
那么问题来了,mvn 源码和插件源码如何调试呢?这里提供一个非常简单的方法:使用 mvnDebug 命令辅助调试。以我们的 Demo 项目为例,其使用步骤如下:
- 在 Demo 项目终端输入 mvnDebug xxx (这里的 xxx 可以是任何命令,比如 clean、compile,或者 dependency:tree 等),总而言之,以前用 mvn 的地方,现在换成 mvnDebug。执行命令之后,你会发现开始了监听模式(如下图所示)。因此我们需要以调试方式启动 Maven 源码,以便让流程继续走下去。
文章图片
- 打开 apache-maven-3.6.3 项目,新建一个远程调试配置,端口选择 8000。如下图所示。
文章图片
- 以调试方式启动 Maven 源码(你可以在入口处打个断点),就会发现流程走进来了。如下图所示。
文章图片
- 然后我们就可以愉快地进行调试了。
注 1:本文以 Maven 核心源码为例介绍了调试流程,其实 Maven 插件的源码调试方法也是一模一样的。
注 2:这种调试的方法很灵活,我们可以随便选择不同的业务项目,与 Maven 源码进行联调。当然也有很多调试 Maven 源码的方法,但要设置一大堆东西。何不用 mvnDebug 自带工具呢,简单便捷。
搞清楚如何调试 Maven 和插件源码后,我们就可以开始正式分析了。
推荐阅读
- 带有Hilt的Android上的依赖注入
- Vue源码分析—响应式原理(二)
- maven使用tomcat7插件编译jsp出错
- 依赖注入模块
- IDEA使用Maven管理项目包,缺少pom文件中引入的依赖包
- SpringBoot解决Shiro导致依赖注入的bean事务失效问题
- spring5源码系列--循环依赖|spring5源码系列--循环依赖 之 手写代码模拟spring循环依赖
- SpringBean单例情况下解决循环依赖的原理
- Java毕业设计项目实战篇|Java项目:在线嘿嘿网盘系统设计和实现(java+Springboot+ssm+mysql+maven)
- Maven|Maven test命令 中文乱码