Intellij Idea远程调试 Java代码

一、前言

线上代码出了问题,总是要在本地复现,然后debug,这个过程是在是不太友好,而且线上的很多数据本地没有,经常耽误好久的时间来同步数据.
当然有解决方案,这就是远程调试(Remote debugging)。远程调试使开发人员能够直接诊断服务器或其它线上进程上的问题,它提供了跟踪线上运行时错误并确定性能瓶颈和问题根源的方法,让你能够像在本地调试一样 Debug 远程服务器

二、开启远程Debug服务

1)对于jar包项目

命令行添加启动项,如下:
注意新参数必须在 -jar 之前

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

参数说明:

  • dt_socket:使用的通信方式

  • transport:监听Socket端口连接方式,常用的dt_socket表示使用socket连接.

  • server:=y表示当前是调试服务端,=n表示当前是调试客户端;

  • suspend:=n表示启动时不中断.

  • address:=5005表示本地监听5005端口。

2)对于war包项目

启动脚本(catalina.sh)添加如下信息:
sudo vim $CATALINA_HOME/bin/catalina.sh

JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"

三、使用 IDEA 进行远程调试

1) 本地参数配置

image.png

2)然后以Debug模式启动
# 工具   liunx   开发使用  

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×