eclipse实现远程debug

远程调试简单理解就是在本地可以调试服务器上的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文件,添加:

SetCATALINA_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 “ PRGDIR"/" EXECUTABLE” start “$@” 中的start改成jpda start。由于默认的端口是8000,所以如果8000端口已有他用的话,还需在catalina.sh文件中设置:JPDA_ADDRESS=8787。

以上二种方式任选其一对tomcat进行设置就好。然后通过ps -aux|grep tomcat查看启动的tomcat进程,刚才配置的-Xdebug等选项出现在进程信息中,证明配置成功。

二:配置本地eclipse。

点击debug按钮,选择Debug Configurations….如下图:

eclipse实现远程debug_第1张图片

eclipse实现远程debug_第2张图片

然后就可以在本地添加断点进行调试了。

你可能感兴趣的:(java-web)