使用idea进行远程调试

  通常,线上的程序出现问题我们需要排查时,我们的方案都是通过查看日志或者在本地运行同样的代码debug进行调试。但由于环境问题往往排查的过程不是很顺利。在这里告诉大家如何通过idea在本地对线上的程序进行远程调试,只要有源代码,并且启动项目时做好配置,就可以在本机直接远程调试服务器上的代码。步骤如下:

1.项目启动时,添加以下参数,允许远程调试:

1
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=${debug_port}

 其中${debug_port}是用户自定义的,为debug端口本地连接远程debug端口。

注意:远程调试从技术上讲,就是在本机与远程建立scoket通讯,所以端口不要冲突,而且本机要允许访问远程端口

否则会出现以下错误信息

 2.配置idea    

  edit configurations + remote

  host处填写远程服务器的iP,端口填写debug 端口,如果包含多个module,可以选择要运行的module的名字

 

 3.测试

 1.我们这里有一个springboot项目jar包

2.执行以下命令运行jar包

1
java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8011 test-remote.jar

同样也可以用以下命令后台启动项目

1
nohup java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8011 test-remote.jar >/null 2>&1 &

3.配置好idea,debug启动

 4.这样就说明已经启动成功,我们可以直接在本地需要调试的地方打断点,然后访问线上的接口查看调试结果

5.可以发现,成功在本地进行远程调试。

 

END

posted @   少说点话  阅读(3956)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
网站运行:7年51天17时24分15秒
点击右上角即可分享
微信分享提示