服务运行时配置允许远程调试
Java se 5之前版本使用(基本不用):java -Xdebug -Xrunjdwp:...
Java se 5之后版本使用:java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=9093 -jar xxx.jar
解释:
- java -agentlib:jdwp=:这是基础命令,后面跟着参数
- transport:可选 dt_socket(常用)、dt_shmem(支持有限)
- server:是否作为调试的服务端使用,默认n
- suspend:启动后是否阻塞服务,直到被链接,默认y(阻塞),一般在服务启动报错,需要调试时才使用
- address:对外暴露的端口,默认8080,不能和项目本身端口冲突
- onthrow:当服务抛出指定异常时,中断调试
- onuncaught:当服务抛出未捕获异常时,是否终端调试,默认n
- launch:当调试中断时,执行指定程序
- timeout:超时时间(ms)
IDEA开启远程调试
-
点击 Edit Configurations
-
添加 Remote JVM Debug
-
配置服务所在服务器IP和PORT