跳至主要內容

使用IDEA远程debug调试

三思原创大约 2 分钟javajavaIDEA调试线上调试

本文介绍了如何使用IDEA进行远程debug调试,包括项目打包、在服务器中启动jar并配置远程JVM调试参数、以及在IDEA中启动远程debug。通过这种方式可以在线上测试环境调试代码,提高问题定位效率。

image
image

使用IDEA远程debug调试(一篇懂所有)

说起 debug 想必大家都非常熟悉,不知道大家是否知道线上也是可以进行 debug 的,不过需要注意的是,切记只能在线上测试环境进行使用,以免造成系统堵塞无法使用,只适用于线上测试环境调试代码,且本地代码必须与线上代码一致,否则可能出现不可预估的问题

一. 项目打包

在项目 clean 后直接使用 package 打包成 jar

在这里插入图片描述

二.idea 配置远程 jvm 调试

这边我直接用本地环境给大家做一个演示 在这里插入图片描述

三.在服务器中启动打包好的 jar

java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar xxx.jar

参数说明: transport=dt_socket 表示用 socket 模式进行数据传输 server=y 表示当前是调试服务端 server=n 则表示调试客户端 suspend=n 表示启动时不中断(如果启动时中断,一般用于调试启动不了的问题) address=5005 表示调试服务器的端口号 -- 需要服务器开放

四.启动 idea 远程 debug

可以在控制台看到提示远程到了 JVM

在这里插入图片描述

现在就可以像在本地一样 debug 调试远程代码了,方便调试一些在线上才出现的特殊问题,还是非常方便的,另外也有一些其它非常好用的远程调试工具,如阿里开源的 Arthas(阿尔萨斯),有机会可以出一篇帖子,有问题评论区滴滴!