catalina.sh
CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8020"
Catalina.bat
set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8020
验证
Linux
netstat -l |grep 8020 tcp 0 0 *:8020 *:* LISTEN
Window
netstat -ano|findstr 8020 TCP 0.0.0.0:8020 0.0.0.0:0 LISTENING 7748
配置debug参数
Run->Debug configurations… 或下图的快捷方式
选择Remote Java Application,右键->New,配置远程调试参数
参数说明:
Name:给当前配置起个名,这个名称会显示到左侧Remote java Application下面;
Project:本地关联的工程,为了保证断点信息显示的准确,要保证本地工程与服务器上部署的工程代码一致;
ConnectionType:链接类型。Standard(Socket Attach)主动链接java应用程序的监听端口;Standard(Socket Listen) 监听本地端口,java应用程序会链接本地端口。通常我们选择主动链接服务器的调试端口。
Host:java应用程序部署的服务器ip;
Port:java应用程序远程调式的端口;
Alow termination of remote VM:勾选该选项,本地调试时可以终结服务器上java应用程序。
启动eclipse中配置的远程调试后,访问java应用程序,eclipse将跳转到本地工程的断点,调试步骤与本地debug一致。