IDEA调试JAR
前言
远程调试相对来说还是比较繁琐的,如果可以给jar拿到本地来运行调试,会方便简单很多。
准备
随便准备个JAR即可,比如 https://github.com/halo-dev/halo
下载后得到halo.jar,通过命令java -jar halo.jar即可运行(这个jar运行需要jdk11)

开始调试
新建一个maven空项目,为了运行jar选择用jdk11,其他的随便选选即可
添加配置,选择JAR Application

然后根据实际情况配置

点击Apply,然后就可以在IDEA里面运行这个JAR了

但这个时候还不能调试,还需要添加classes依赖关系
之前也说过,要添加了依赖关系IDEA才会执行这个代码,才能知道你下的断点,才会在那阻断让你分析
先解压这个jar

然后给目录lib添加到依赖中,不然这个jar使用的其他jar依赖不能调试

然后给目录BOOT-INF添加到依赖关系中

然后就可以Debug调试了
下断点有个勾表示成功

成功拦截

最后
虽然说上面已经可以开始调试了,但还是有一些问题
一些函数可能因为不能反编译等等原因,导致找不到,也会影响我们的进程
所以有条件的情况下,可以下载他的源代码,然后给源代码也加入进去(直接点上面的提示choice source file即可)