声明:原创文章,转载请注明出处。http://www.jianshu.com/u/e02df63eaa87
1、背景
在很多情况下,服务端程序部署在远程,某部分逻辑出现问题时,不停地对代码修改,增加log查出问题根源。但是,有些服务启动时间较长、不断的打包、上传、测试会令人非常头疼。因此,可以使用远程调试的方式对远程部署的服务调试。
2、准备
- idea IDE、远程服务源码
- 远程服务
- 测试客户端
3、部署图
![](https://img.haomeiwen.com/i4324380/52feaacd0779851f.png)
由于是对源码进行调试,源码经编译后运行在远程服务器上,并且在本地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)进行调试,并在代码中设置好断点。
![](https://img.haomeiwen.com/i4324380/8121ac8e6bc5ecd8.png)
- 4.4 客户端请求
![](https://img.haomeiwen.com/i4324380/aa300981d25e1b89.png)
从图中看到,当请求后,变量值不仅动态出现在代码后面,而且在底部也有相应的变量值。
5、备注
只有添加的断点中有对号时,才表示断点有效。
如果出现下图的情况,可以看看是否是禁用了断点。
![](https://img.haomeiwen.com/i4324380/aefe4467972df4b1.png)
网友评论