远程调试简单理解就是在本地可以调试服务器上的web程序。
优点:
a. 运行速度比较好。
b. 运行期间可以使用eclipse连接web应用做调试,调试完成后可以断开连接,需要调试的时候可以再重新进行连接,断点的禁用功能可能就很少派上用场了,因为相对于在debug模式和run模式间自由切换。
c. Web应用是独立运行的,不用担心eclipse死掉即玩完了。
d. 从开发到上线运行,环境一直可以保持一致。
要实现远程debug需要配置tomcat和本地eclipse。当然首先要将我们的web应用部署到tomcat的webapp目录下面。
一:配置tomcat。
配置tomcat有二种方式。我们选用的是第二种。
1.配置$tomcat_home/bin/catalina.sh
Linux中配置tomcat在catalina.sh中添加如下:
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
(不要换行,要在同一行)
Window中修改 catalina,bat文件,添加:
Set “CATALINA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
说明:
-Xdebug : 启用调试模式
-Xrunjdwp : 加载JVM的JPDA参考实现库
transport=dt_socket :Socket连接,可选dt_shmem 通过共享内存的方式连接到调试服务器
server=y 是指目标应用程序作为服务监听将要连接的远程调试器(常用);
suspend=y 是指目标VM将暂停,直到调试器应用程序进行连接(若需要调试启动错误,很有用);
suspend=n 是指目标VM不暂停;
address=8000 监听端口。默认是8000
直接通过startup.sh启动tomcat即可。
2.非window系统,还可以直接修改startup.sh
在最后一行exec “
以上二种方式任选其一对tomcat进行设置就好。然后通过ps -aux|grep tomcat查看启动的tomcat进程,刚才配置的-Xdebug等选项出现在进程信息中,证明配置成功。
二:配置本地eclipse。
点击debug按钮,选择Debug Configurations….如下图:
然后就可以在本地添加断点进行调试了。