远程调试tomcat服务
配置tomcat在catalina.sh中添加如下
CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"
远程调试Java程序
微服务程序直接在启动命令行后追加-server -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n
,例如:
nohup java -jar -server -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n test.jar &
参数说明:
-Xdebug
: 启用调试模式
-Xrunjdwp
: 加载JVM的JPDA参考实现库
transport=dt_socket
:Socket连接,可选dt_shmem 通过共享内存的方式连接到调试服务器
address=8000
:调试服务器监听的端口
server=y
:是否是服务器端,n为客户端
suspend=n
:启动过程是否加载暂停,y为启动时暂停,方便调试启动过程
Eclipse中启动调试
注意:本地代码与远程服务的代码需保持一致
Debug Configurations
-> Remote Java Application
-> 右键New Configuration
-> 选择项目 -> 设置host -> 设置port(在参数中配置的端口号)