美文网首页
idea中远程debug调试

idea中远程debug调试

作者: 天天想念 | 来源:发表于2021-07-07 10:58 被阅读0次
    远程debug调试原理

    在本地远程调试服务器端的代码原理:本地和服务器端建立一个socket连接监听,当客户端访问服务器的时候,服务器端会先去问本地idea有没有断点,如果有会停在当前断点,如果没有就返回给客户端。
    缺点:1.服务器端需要开启debug运行,在生产环境debug会影响性能。实际使用场景有限。

    1.本地端配置

    在本地idea的工程中添加Edit configuration配置

    Edit configuration配置
    Edit configuration配置1
    Edit configuration配置2
    在配置2中需要将jvm的参数-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005给复制下来,在服务器端配置时候使用。

    2.服务器端配置

    首先在服务器端配置放开5005端口(阿里云或腾讯云服务器需要在安全组中放5005端口)
    在服务器端我使用的是springboot直接打包的demo工程。在命令行中直接使用如下命令运行

    java -Xdebug -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar .\demo-0.0.1-SNAPSHOT.jar
    

    运行成功后会提示


    5005端口

    表明服务器端已经启动成功,开启5005端口的监听。

    3.实际调试

    我们回到本地调试端,在第一步的图片配置2中我配置的remote名字是remoteTest,我们在本地idea中选择remoteTest然后运行工程。


    remoteTest

    运行后如果没有报错,则本地控制台会有如下提示

    Connected to the target VM, address: 'ip:5005', transport: 'socket'
    

    然后我们在本地工程中打上断点,客户端请求服务器后会发现已经进入了本地idea的断点中。

    相关文章

      网友评论

          本文标题:idea中远程debug调试

          本文链接:https://www.haomeiwen.com/subject/ajloultx.html