网上找了很多,发现有的人写几句就完事了。自己操作的时候一直不通。今天花了大半天,从无到有确认通了,决定把他记下来。
我用的是 eclipse luna + jetty 9.
远程调试主要是解决本体DEBUG正确,远程缺出BUG的情况。还有一种情况是作为接收端,因为在内网,无法调试接口而需要将接收端部署到外网服务器上这种情况。
首先是在jetty下加入启动远程调试的参数 -Xdebug -Xrunjdwp:transport=dt_socket,address=10000,server=y,suspend=n。这句很多帖子都写了。
问题是加在哪。用 ${jettyhome}bin/jetty.sh start来启动服务的,需要加在jetty.sh中。
找到同样写 JAVA_OPTIONS的地方的下一行 加入:
JAVA_OPTIONS+=("-Xdebug -Xrunjdwp:transport=dt_socket,address=10000,server=y,suspend=n")。 注意address是端口,可以自己修改。
作者不是用这种方式启动的,是用 java -jar start.jar 启动的。所以在修改该命令 nohup java -Xdebug -Xrunjdwp:transport=dt_socket,address=10000,server=y,suspend=n -jar start.jar。
启动后,本地eclipse --- > Debug as --- > debug configurations -- > Remote java application --> 右键 new --->
project 选择本地工程,这里需要保证本地工程代码和服务器上是相同的。否则会调试行数对不上。
host 输入服务器的ip地址
port 填写JDPW的端口,如上配置是10000
然后点DEBUG。会出现运行。如果发现Failed to connect to remote VM. Connection refused. 需要重启一下jetty,作者不知道原因,想来应该是连接上后没有正确释放连接,所以每次调试都需要重启服务。这点有点麻烦。但毕竟远程调试不是长期的方式,所以忍忍。
如果出现 time out.需要修改 eclipse debug的time out 时间。作者因为公司网络不好,和服务器连接不稳,所以遇到过几次。
我改成了20000。
如果顺利,出现进度条,然后进度条消失。此时是进入了远程debug模式,可以开始出发设置了断点的代码开始进行了。
笔者写的还算仔细,如有转载请明确转载地址。网上找了很多,发现有的人写几句就完事了。自己操作的时候一直不通。今天花了大半天,从无到有确认通了,决定把他记下来。
我用的是 eclipse luna + jetty 9.
远程调试主要是解决本体DEBUG正确,远程缺出BUG的情况。还有一种情况是作为接收端,因为在内网,无法调试接口而需要将接收端部署到外网服务器上这种情况。
首先是在jetty下加入启动远程调试的参数 -Xdebug -Xrunjdwp:transport=dt_socket,address=10000,server=y,suspend=n。这句很多帖子都写了。
问题是加在哪。用 ${jettyhome}bin/jetty.sh start来启动服务的,需要加在jetty.sh中。
找到同样写 JAVA_OPTIONS的地方的下一行 加入:
JAVA_OPTIONS+=("-Xdebug -Xrunjdwp:transport=dt_socket,address=10000,server=y,suspend=n")。 注意address是端口,可以自己修改。
作者不是用这种方式启动的,是用 java -jar start.jar 启动的。所以在修改该命令 nohup java -Xdebug -Xrunjdwp:transport=dt_socket,address=10000,server=y,suspend=n -jar start.jar。
启动后,本地eclipse --- > Debug as --- > debug configurations -- > Remote java application --> 右键 new --->
[图片上传失败...(image-dc647d-1512717583276)]
[图片上传失败...(image-e06a9e-1512717583276)]
project 选择本地工程,这里需要保证本地工程代码和服务器上是相同的。否则会调试行数对不上。
host 输入服务器的ip地址
port 填写JDPW的端口,如上配置是10000
然后点DEBUG。会出现运行。如果发现Failed to connect to remote VM. Connection refused. 需要重启一下jetty,作者不知道原因,想来应该是连接上后没有正确释放连接,所以每次调试都需要重启服务。这点有点麻烦。但毕竟远程调试不是长期的方式,所以忍忍。
如果出现 time out.需要修改 eclipse debug的time out 时间。作者因为公司网络不好,和服务器连接不稳,所以遇到过几次。[图片上传失败...(image-889083-1512717583275)]
我改成了20000。
如果顺利,出现进度条,然后进度条消失。此时是进入了远程debug模式,可以开始出发设置了断点的代码开始进行了。
转载地址:http://m.blog.csdn.net/arsenal04/article/details/40867327