tomcat 开启jpda远程调试

TOMCAT开放远程调试端口

方法1、

WIN系统,在catalina.bat里:

SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8899 

Linux系统,在catalina.sh里:

CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8899" 

jpda 参数

虚拟机参数设置

1.1启用调试服务
-Xdebug 启用调试
-Xrunjdwp: 加载JVM的JPDA参考实现库

1.2 Xrunjdwp子参数(sub-options)配置
Xrunjdwp子参数的配置格式如下
Xrunjdwp:[=],[=]...

1.3 transport=dt_socket
JPDA front-end和back-end之间的传输方法。dt_socket表示使用套接字传输。

1.4 address=8000
JVM在8000端口上监听请求。

1.5 server=y
y表示启动的JVM是被调试者。如果为n,则表示启动的JVM是调试器。

1.6 suspend=y
y表示启动的JVM会暂停等待,直到调试器连接上。
suspend=y这个选项很重要。如果你想从Tomcat启动的一开始就进行调试,那么就必须设置suspend=y。


方法2、

Linux环境的启动
在Linux系统中已经Tomcat已经配置了Jpda,可是啊,默认情况下tomcat的启动命令是: ./catalina.sh start 但是这个命令是没有启动我们的jpda这个服务。
我们需要启动jpda服务,好在tomcat提供了集成化的命令:./catalina.sh jpda start ,这样就启动了我们服务器jvm的jpda服务了。tomcat默认的jpda服务的端口是8000,这个时候我们使用命令看下 netstat -an,看看8000端口是不是已经启动了。如果我们想修改端口该如何呢?呵呵,经过分析我们知道Jpda的工作细节,那么也像Windows环境的启动一样
我们将

export JPDA_ADDRESS=8000

修改为

export JPDA_ADDRESS=5050



961086a0ba906fd0e17dcdd2f9f6534d.png

你可能感兴趣的:(tomcat 开启jpda远程调试)