远程调试非本机的Java进程
远端Java进程启动的JVM参数
注意:以下配置尽量不要在线上生产环境开启,或者
JDK4:
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address={port}
JDK5-JDK8:
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address={port}
JDK9+:
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:{port}
Tomcat:
示例:
以下为catalina.sh或者catalina.bat中JVM启动参数:
现象:
tomcat启动成功后控制台输出:
Jar:
示例:
Docker:
示例:
使用Myeclipse远程连接远程JVM
按钮位置:
Run==>DebugConfigurations==>Remote Java Application==>new
选择JVM对应的源码、Host、上面的Port即可。