前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >IDEA 远程调试

IDEA 远程调试

原创
作者头像
诺浅
修改2020-08-20 18:01:55
1.4K0
修改2020-08-20 18:01:55
举报
文章被收录于专栏:工具使用工具使用

远程调试的原理

本机和远程主机的两个 VM 之间使用 Debug 协议通过 Socket 通信,传递调试指令和调试信息。

被调试程序的远程虚拟机:作为 Debug 服务端,监听 Debug 调试指令。jdwp是Java Debug Wire Protocol的缩写。

调试程序的本地虚拟机:IDEA 中配置的 Remote Server,指定 Debug 服务器的Host:Port,以供 Debug 客户端程序连接。

如何进行远程调试

idea设置

在这里插入图片描述
在这里插入图片描述

远程项目设置

idea设置好了,复制命令行参数,我们需要去启动项目的地方设置,启动项目有通过tomcat启动的,也有通过springboot内置tomcat启动的,下面分别说

springboot方式

代码语言:txt
复制
## 注意新参数必须在 -jar 之前
jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar test.jar

Tomcat方式

start.sh(windows下是start.bat)中添加如下,

在这里插入图片描述
在这里插入图片描述
代码语言:txt
复制
## sudo vim $CATALINA_HOME/bin/catalina.sh
JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"

到此就设置好了,在idea中打上断点,然后启动Remote来进行调试吧。

在这里插入图片描述
在这里插入图片描述

问题

  1. 可能需要远程服务器的防火墙放行5005端口
代码语言:txt
复制
### sudo vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5005 -j ACCEPT
### 重启生效: sudo systemctl restart iptables
  1. 远程代码需要与本地代码完全一致

参考:https://blog.csdn.net/kefengwang/article/details/81213014

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 远程调试的原理
  • 如何进行远程调试
    • idea设置
      • 远程项目设置
        • springboot方式
        • Tomcat方式
    • 问题
    相关产品与服务
    远程调试
    远程调试(Remote Debugging,RD)在云端为用户提供上千台真实手机/定制机/模拟器设备,快速实现随时随地测试。运用云测技术对测试方式、操作体验进行了优化,具备多样性的测试能力,包括随时截图和记录调试日志,稳定的支持自动化测试, 设备灵活调度,用例高效执行, 快速定位产品功能和兼容性问题。云手机帮助应用、移动游戏快速发现和解决问题,节省百万硬件费用,加速敏捷研发流程。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档