Eclipse远程调试


  

 一直在使用Eclipse,由于某些原因服务需要上传到服务器才能正常发布,在开发功能以及BUG定位时,只能依赖system输出等来跟踪,过程中需要多次打包、上传,十分浪费时间,在同事推荐下,知道了Eclipse远程调试功能,在这里记录下搭建过程;首先在打包项目的时候,在代码中打入断点,然后正常打包即可,上传到服务器,在启动脚本增加-Xdebug -Xrunjdwp:transport=dt_socket,address=52002,server=y,suspend=n ;

EX:

#!/bin/bash

nohup java -server -Xmx1g -Xms512m -Xmn342m -XX:MaxPermSize=80m -XX:MaxDirectMemorySize=256m -XX:+UseParallelGC -XX:ParallelGCThreads=2 -Xdebug -Xrunjdwp:transport=dt_socket,address=50242,server=y,suspend=n   
-cp ocs_cdr_per-1.0.0-SNAPSHOT.jar net.snailgame.ocs.per.PerMain applicationContext-per.xml > ocs_cdr_per.log &

 启动脚本后,可以通过jps -v 命令,查找这一行 ,-Xrunjdwp:transport=dt_socket,server=y,address=8000,suspend=n ,来确认是否正确启动;

有时候可能会报错:

Debugger failed to attach: handshake failed - connection prematurally closed

此处我报错的原因是由于一开始设置的端口8000被占用,导致无法连接,重新更换端口,即可以正确连接;

在服务启动以后,开始设置Eclipse;

Run->Debug Configurations->Remote Java Application->new ,填写Host,Port,然后debug即可

 

 

有关于Eclipse的远程调试的具体内容请参考,

Eclipse远程调试说明:

 

猜你喜欢

转载自holyland.iteye.com/blog/2397839