欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

如何使用 IDEA 进行远程 debug

程序员文章站 2022-07-15 07:57:38
...

前言

在开发中经常遇到这样一个问题,在本地环境跑的好好的代码,一上开发服/测试服就有问题,这类问题往往很难在本地复现,也就意味着修复改 bug 是个艰难的过程。今天跟大家分享如何使用 IDEA 远程 debug 功能解决上述问题

IDEA 设置

  1. 点击菜单栏的Run -> Edit Configurations...,打开 Run/Debug Configurations 窗口
  2. 点击工具栏左上角的+按钮,选择Remote
  3. 设置远程主机的端口与地址
  4. Command line arguments for remote JVM 中填入-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005

如何使用 IDEA 进行远程 debug

程序开启远程 debug 服务

springboot

对于 springboot 的程序,在启动命令添加-agentlib参数

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

注意,该参数必须在 java 命令之后,-jar 参数之前

tomcat

对于部署到 tomcat 上的程序,需要在 catalina.sh 中添加以下代码

export JAVA_OPTS='-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005'

开始调试

点击 debug 连接上服务器项目

如何使用 IDEA 进行远程 debug

当控制台打印Connected to the target VM, address: '192.168.2.55:5005', transport: 'socket'证明已经连接上远程项目,接下来就可以像调试本地程序一样调试服务器上的程序啦

如果开启了防火墙,还需要对 5005 端口放行

热部署

远程调试不仅可以像调试本地项目一样,当修改方法体代码的时候(增加方法/类等修改,还是需要重新部署代码到服务器的),还可能将代码热部署到服务器上,快捷键是ctrl + shift + F9

扫码关注我
一起学习,一起进步

如何使用 IDEA 进行远程 debug