关于java:IDEA远程调试Remote-DebugJava代码指南

57次阅读

共计 936 个字符,预计需要花费 3 分钟才能阅读完成。

前言

当咱们的代码在线上 / 测试环境运行出现异常须要进行问题定位时, 之前的传统做法是: 查看异样日志, 依据日志定位到出错代码, 而后再依据相干参数及异样信息进行推断。然而很多异样问题须要更粗疏的进行 debug 才可能更精准的去定位和解决,这种状况下,咱们心愿可能像在本地调试一样去 debug 线上 / 测试环境的代码,这样能够大大晋升 bug 修复的效率,IDEA 十分贴心的为咱们提供了这一性能,具体用法如下:

配置步骤

近程服务启动参数

应用如下命令启动服务端程序;

java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=0.0.0.0:5005 -jar 待发布的程序 jar 包名称.jar

本地 IDEA 配置

1. 菜单栏抉择 Run | Edit Configurations 或按快捷键 Alt+Shift+F10 而后抉择“0.”;
2. 在 Run/Debug Configurations 面板,点击左上角“+”号,而后抉择“Remote”;
3. 配置“Remote”属性:

  • Name:配置 Remote Debug 的名称,能够是任意名称;
  • Host:配置服务器的域名或 ip 地址,Port 应用默认值 5005,也能够是其余端口;
  • Command line arguments for remote JVM:配置 Debug 近程服务的命令行启动参数,本地在 Debug 时会监听近程服务的对应端口并运行调试环境,具体的参数阐明如下:

    • -Xdebug:JVM 在 DEBUG 模式下工作;
    • -Xrunjdwp:JVM 应用 (java debug wire protocol) 来运行调试环境;
    • transport:监听 Socket 端口连贯形式, 罕用的 dt_socket 示意应用 socket 连贯;
    • server:= y 示意以后是调试服务端,= n 示意以后是调试客户端;
    • suspend:= n 示意启动时不中断;
    • address:示意本地监听的地址和端口。

而后在本地程序中在须要调试的代码处设置断点,最初再按 Alt+Shift+F9 抉择之前配置的 remote debug 并点击“Debug”运行;

申请 & 调试

向服务器的接口发动申请,能够察看到申请会进入本地程序设置断点处,至此实现 IDEA 进行 Remote Debug;

正文完
 0