美文网首页工作专题程序员java学习
IntelliJ Idea 远程调试Java服务

IntelliJ Idea 远程调试Java服务

作者: 唐影若凡 | 来源:发表于2017-03-06 16:24 被阅读442次

声明:原创文章,转载请注明出处。http://www.jianshu.com/u/e02df63eaa87

1、背景

在很多情况下,服务端程序部署在远程,某部分逻辑出现问题时,不停地对代码修改,增加log查出问题根源。但是,有些服务启动时间较长、不断的打包、上传、测试会令人非常头疼。因此,可以使用远程调试的方式对远程部署的服务调试。

2、准备

  • idea IDE、远程服务源码
  • 远程服务
  • 测试客户端

3、部署图

部署图

由于是对源码进行调试,源码经编译后运行在远程服务器上,并且在本地Idea IDE中打开源码。在Idea连接上远程服务后,测试请求远程服务,在可以看到idea中设置的断点信息。

4、步骤

  • 4.1 远程服务运行增加特定JVM参数
-Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=8889

其中,address=8889为debug端口,idea需要连接此端口。

  • 4.2 Idea 连接远程服务
    按照下图的三个步骤进行操作,建立远程连接。


    连接
  • 4.3 debug
    在远程服务启动后,点击下图中的“虫子”(shift+F9)进行调试,并在代码中设置好断点。

debug
  • 4.4 客户端请求
测试请求

从图中看到,当请求后,变量值不仅动态出现在代码后面,而且在底部也有相应的变量值。

5、备注

只有添加的断点中有对号时,才表示断点有效。
如果出现下图的情况,可以看看是否是禁用了断点

备注

相关文章

网友评论

    本文标题:IntelliJ Idea 远程调试Java服务

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