当前位置: 首页 > article >正文

完美解决Idea中如何对Java Agent进行断点调试的方式

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包了,直接打断点,就可以进入了
在这里插入图片描述


http://www.kler.cn/a/330616.html

相关文章:

  • docker 基本使用
  • 如何在 Ubuntu 22.04 上安装 Nagios 服务器教程
  • uniapp实现在card卡片组件内为图片添加长按保存、识别二维码等功能
  • 智慧公厕大数据驱动下的公共卫生管理与优化
  • 使用 C++ 实现神经网络:从基础到高级优化
  • 【C++习题】20. 两个数组的交集
  • 动态规划
  • Stream流的中间方法
  • 本地生活服务项目有哪些:如何利用本地生活市场,打开线下流量!
  • oracle 定时任务每月27号到月底
  • 信息安全工程师(13)网络攻击一般过程
  • 【分布式微服务云原生】Docker常用命令指南
  • 【预备理论知识——1】深度学习:概率论概述
  • Redis入门第五步:Redis持久化
  • 什么是“0day漏洞”?
  • 【leetcode】 45.跳跃游戏 ||
  • 如何快速自定义一个Spring Boot Starter!!
  • 更新-Python OS
  • 基于SpringCloud的微服务架构下安全开发运维准则
  • Linux -- 文件系统(文件在磁盘中的存储)
  • 滚雪球学Oracle[6.1讲]:高级特性与实战案例
  • JZ2440开发板——代码重定位
  • PHP反序列化8(phar反序列化)
  • Webstorm 中对 Node.js 后端项目进行断点调试
  • Leecode热题100-84.柱状图中的最大矩形
  • Go基础编程 - 15 - 延迟调用(defer)