使用IDEA实现java远程调试
. idea配置
. 启动所要连接的服务
java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 *****.jar
参数说明
transport:debugee与debuger调试时之间的通讯数据传输方式。
server:是否监听debuger的调试请求。
suspend:是否等待启动,也即设置是否在debuger调试链接建立后才启动debugee JVM。
address:debugee的地址,用于debuger建立调试链接。
本地的为debugger,远程的为debugee。
对应监测端口开放
启动命令中 5005就是服务对外提供的远程调试访问端口,服务器防火墙要对应开放,否则也连接不上。
- 命令
1、开启防火墙
systemctl start firewalld
2、开放指定端口
firewall-cmd --zone=public --add-port=1935/tcp --permanent
命令含义:
–zone #作用域
–add-port=1935/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
3、重启防火墙
firewall-cmd --reload
4 、查看对外开放的所有端口
firewall-cmd --list-ports
. idea开启远程连接
链接成功后控制台会输出以下信息
. 必须准备的条件
1, 你的服务代码,必须与你idea远程连接的本地代码一模一样,否则调试可能遇到你无法想象的问题。