zoukankan      html  css  js  c++  java
  • 使用idea进行远程调试

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

    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包

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

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

    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

  • 相关阅读:
    .Net 中double相加的困惑
    关于内存资源消耗快的问题
    内存资源消耗快的问题
    跨线程更新窗体
    .Net实现双缓冲
    TypeConverter
    emf文件的导入
    在资源中存放图象与emf文件的显示
    笔记java中nextLine方法没有输入就跳过了
    Silverlight Triggers、Actions 和 Behaviors
  • 原文地址:https://www.cnblogs.com/sueyyyy/p/11884272.html
Copyright © 2011-2022 走看看