一、在windows系统中:
打开%CATALINE_HOME%/bin下的文件catalina.bat,加入下面这行:
set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address= 8000
其中 address=8000是没被使用的端口号。连接方式有两种,为dt_shmem和dt_socket,分别表示本机调试和远程调试。
二、在非windows系统中:
1:把tomcate中 % CATALINE_HOME %/bin/startup.sh中的最后一行
exec "$PRGDIR"/"$EXECUTABLE" start "$@" 改为
exec "$PRGDIR"/"$EXECUTABLE" jpda start "$@"
2:默认的远程调试端口是8000,如果被占用,编辑%CATALINE_HOME%/bin/catalina.sh文件,将
JPDA_ADDRESS="8000" 改为
JPDA_ADDRESS="8888"
3:输入命令/usr/local/tomcat/bin/catalina.sh jpda start 启动
第二步、配置eclipse
(图 1.2)
在 “Name”输入框中输入远程调试的名称,在“Project”中选择要调试的项目,在“Host”中输入需要远程调试项目的IP,也就是tomcat所在的IP,在“Port”中输入设置的端口号,比如上面设置的8000,然后钩选“Allow
termination of remote VM”,点击“Apply”即可。
第三步:启动调试
1、启动tomcat(远程),如在控制台输出“Listening
for transport dt_socket at address: 8000”,即说明在tomcat中设置成功;
2、在本机设置断点;
3、进入上图界面(图 1.2),选择要调试的项,点击“Debug”即可进行远程调试;
4、访问你的测试页面即可看到久违的调试界面。
但每次做上述操作非常烦,不如写个批处理,如取名为Tomcat debug.bat,在这个文件中加入下面几行:
cd %CATALINE_HOME%/bin
set JPDA_ADDRESS=8000
set JPDA_TRANSPORT=dt_socket
set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787
startup
将此脚本保存到tomcat/bin目录下,然后发个快捷方式在桌面,欧啦~~~~
这样需要远程调试时,运行debug.bat即可;不需要远程调试时,还是运行startup.bat文件
注意:有时候会出现拒绝访问
/etc/rc.d/init.d/iptables
stop 用于关闭防火墙