关于Eclipse远程Debug

背景:

1,项目部署在Linux服务器上,本地eclipse进行远程调试

2,项目是jar包运行,使用shell脚本启动

以下是调试步骤:

========================================================

1,-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket, address=8787, server=y, suspend=n

启动命令:java -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket, address=8787, server=y, suspend=n -jar  xxx.jar

连接到myhost:8787提供的调试服务

-Xdebug是通知JVM工作在DEBUG模式下,

-Xrunjdwp是通知JVM使用(Java debug wire protocol)来运行调试环境。该参数同时了一系列的调试选项:

transport指定了调试数据的传送方式

扫描二维码关注公众号,回复: 2606149 查看本文章

dt_socket            是指用SOCKET模式

server=y/n            VM 是否需要作为调试服务器执行。

suspend=y/n           是否在调试客户端建立连接之后启动 VM 。

启动服务器上的jar包

========================================================

2,打开eclipse

 

 

 

===========================================注意:联通之后这个地方会出现此类按钮如上图

 

 ============================================

需要注意的地方:

1,必须保持服务器上运行的代码和本地的代码保持一致

2,一般我们debug是调试接口的,当一台电脑开启一个eclipse联通服务器上运行的代码以后,这台电脑上再打开任何的eclipse发送请求去请求服务器上代码的接口,都不能进入debug模式

(本人实验如此,运行了2个版本的eclipse也不行)

3,本人的实践的结果是:

a,一台电脑联通服务器开启debug模式,另一台电脑发送请求,可以进入debug模式

b,部署一个前置项目在服务器上,提供页面请求接口,本地eclipse联通服务器,可以进入debug模式

c,此类未经实践,百度另一种方法是用接口测试工具发送请求,本地eclispe联通服务器

最后,debug模式下,本地的eclipse代码记得打断点。

猜你喜欢

转载自www.cnblogs.com/huangtao1927/p/Eclipse.html