JAVA Remote Debug With Tomcat | Tomcat远程调试

Java Remote Debug?

Java远程调试的原理是两个JVM之间通过Debug协议(JDWP)进行通信,然后以达到远程调试的目的。通讯方式为socket,所以会看到transport=dt_socket的配置

JDWP是Java Debug Wire Protocol的缩写。The JavaTM Debug Wire Protocol (JDWP) is the protocol used for communication between a debugger and the Java virtual machine (VM) which it debugs (hereafter called the target VM)。

Start Debug With Tomcat

1.首先找到tomcat\bin目录下的startup.bat文件,在大概40行左右的位置set "EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat"这句话上方添加

set “CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787”

JAVA Remote Debug With Tomcat | Tomcat远程调试_第1张图片

suspend表示是否在调试客户端建立连接之后启动 VM,如果为y,那么当前的VM就是suspend直到有debug client连接进来才开始执行程序。如果你的程序不是服务器监听模式并且很快就执行完毕的,那么可以选择在y来阻塞它的启动。一般推荐suspend=n

2.启动tomcat,查看 netstat -aon|findstr "8787" 8787端口是否被占用。

3.接着Eclipse或者IDEA配置并设置Remote Java Application,设置正确的端口connection port = address port
JAVA Remote Debug With Tomcat | Tomcat远程调试_第2张图片

你可能感兴趣的:(杂谈,OpenAM,tomcat远程调试,eclipse,debug,tomcat,tomcat,debug,eclipse调试tomcat)