原文:How to remotely debug application running on tomcat within Intelli Idea
本文摘取了原文多种配置中得一种并检验成功:
一下配置均针对Linux系统
tomcat版本:7.0.41
远程调试分为两个主要步骤:
1.启动远端Tomcat并开启一个远程调试端口
2.本地IDE链接远端Tomcat
第一步:配置Tomcat远程调试端口并启动:
有多种方式可以设置JVM远程调试端口,如JPDA_OPTS, CATALINA_OPTS 或者JAVA_OPTS。然而一旦设置JAVA_OPTS,所有的JVM应用都会被影响,所以可以通过设置CATALINA_OPTS或JPDA_OPTS。在Tomcat的启动脚本catalina.sh中,CATALINA_OPTS会引用到JPDA_OPTS。所以我们直接修改JPDA_OPTS就可以了。
1.修改$TOMCAT_HOME/bin下得setenv.sh。增加一行
意思是:a)指定远程应用和调试工具间通讯协议(transport=dt_socket) b)指定远程应用的debug端口(1043) c) server=y告诉当前JVM会被调试 d) suspend=n 则告诉JVM不用等待有调 试者链接,马上开始执行;如果你设置成”y”,那么应用会被挂起,直到有调试者链接上。
2. 启动Tomcat 使用命令
(本来应该使用$TOMCAT_HOME/bin/catalina.sh start)
第二步:配置IDEA链接远程调试端口
1.配置Debug配置
IDEA—》Run—》Edit Configuration 添加一项新的设置
2.在server页签指定远程主机和端口的细节
3.切到Startup/Connection 页签,指定需要调试远程的JVM端的信息
4. 点OK保存后,我们尝试点击Debug按钮尝试链接到远程Tomcat了。链接成功汇报下面信息
5.剩下的我们就可以像调试本地程序一样打断点调试程序了
注:之前用过jdb工具可以链接代码在服务器命令行调试,也是一种非常好用的方法。jdb可以直接在服务器上调试而不需要IDE工具,可以避免代码不同步的问题。待尝试后再补充
(责任编辑:IT) |