1、前言
在日常开发中,可能会存在写一个Java Agent到项目中去,Agent的实现可能是复杂的,有时候会出现attach到进程上后,发现没效果,也不知道怎么调试,只能通过打日志的方式实现,效率实在是太低了,博主给出以下两种调试技巧
2、 Agent的代码在同一个项目中
这个场景是针对Agent的代码与被测试的代码在同一个项目中,不过这种一般不常见,一般写好的agent都是可以给任意的项目使用的,但是也推荐一下吧
首先还是老规矩,添加打包好的agent的jar的参数
然后断点模式启动项目,直接正常的在Idea中的agent代码中打断点即可
看得出来是可以进入到断点的
3、Agent的代码不在同一个项目中
对于不在同一个项目的Agent来说,想在目标项目中进行断点,那么自然想到的是目标项目中肯定要有这个agent的源码,日常开发中对maven的依赖也是如此,那么可以用idea 的添加jar包方式导入到idea中,然后在jar包中的源码设置断点即可
看得出来我这个项目中什么agent的源码都没有,先添加agent
添加liabary,file->project structure->libraries->add
添加完之后,在左侧的liabary中可以看到有jar包了,直接打断点,就可以进入了