IDEA远程Debug

591 阅读1分钟

前言

本地开发代码跟生产上线感觉就像两套代码一样,经常性在本地开发&调试无问题,一上生产就出问题。

开发环境与生产环境

  • 开发环境
    • IDEA2020.3
    • JDK1.8_271
  • 生产环境
    • JDK1.8_181

Demo

java -Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=y -cp /script/scala_job/jars/scala-1.0-SNAPSHOT.jar com.xinxing.dingding.GetUserPhone

在你自己要运行的jar包加参数-Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=y即可,由于我一个jar包有好几个main方法,所以我用的不是 -jar 是 -cp 。

  • 参数含义:
    • -XDebug 启用调试
    • -Xrunjdwp 加载JDWP的JPDA参考执行实例
    • transport 用于在调试程序和 JVM 使用的进程之间通讯
    • dt_socket 套接字传输
    • server=y/n JVM是否需要作为调试服务器执行
    • address 调试服务器监听的端口号
    • suspend=y/n 是否在调试客户端建立连接之后启动 JVM

请注意查看服务器防火墙是否关闭,网络是否可以ping通

1、服务端运行jar包

2、IDEA配置

3、给本地项目打好断点后,点那个绿色的小昆虫

注意:选择你配置的那个远程RemoteDebug,选错了就直接在你本地进行Debug了!

接下来就可以开始远程Debug了。