基本原理

  • 本机和远程主机的两个 VM 之间使用 Debug 协议通过 Socket 通信,传递调试指令和调试信息。
  • 被调试程序的远程虚拟机:作为 Debug 服务端,监听 Debug 调试指令。jdwp是Java Debug Wire Protocol的缩写。
  • 调试程序的本地虚拟机:IDEA 中配置的 Remote Server,指定 Debug 服务器的Host:Port,以供 Debug 客户端程序连接。

远程调试步骤

  1. IDEA配置启动环境(Debug服务器)

2.开启远程Debug服务

a.对于jar包服务

## 注意新参数必须在 -jar 之前java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar test.jar

b.对于war包服务

启动脚本(catalina.sh)添加如下信息:

## sudo vim $CATALINA_HOME/bin/catalina.shJAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"

注意

  1. 有时候调试时提示Connect time out,这时候需要关闭防火墙
  2. 只有本地和远程的代码保持一致才能进行远程调试

idea将远程代码更新合并到本地_idea 本地调试远程服务器代码相关推荐

  1. android通过代码设置铃声_使用VS Code调试Android C_C++代码(无需Android源码)

    需求分析 在开发 Android Native 程序时(仅 C/C++代码,无 APK 应用),之前在调试的过程中一直只是使用添加 LOG 的方式来定位程序的问题,而在 Linux 上开发平台程序时, ...

  2. java和scala代码可以混合编写吗_IDEA实现Java与Scala代码混合开发

    文章目录 0x00 文章内容 0x01 编写Scala代码 1. 引入Scala的SDK 2. 运行结果 0x02 解决两个问题 1. 引入Scala插件 2. 排除依赖 0xFF 总结 0x00 文 ...

  3. 使用Git切换分支(创建本地分支,远程分支,合并分支代码)

    1.创建本地分支 git branch  develop 2.本地切换到新创建的分支   git checkout develop    对应的远程分支也会切换 3.查看当前所在分支   git ch ...

  4. 获取远程服务器代码到本地文件,获取远程服务器代码到本地文件

    获取远程服务器代码到本地文件 内容精选 换一换 远程桌面协议(Remote Desktop Protocol,RDP),是微软提供的多通道的远程登录协议.本节为您介绍如何使用RDP文件远程登录Wind ...

  5. Git配置本地分支、远程分支、合并分支、撤销合并分支

    1.使用 git brach 命令可以新建一个本地分支 git branch dev-QC 新建完分支后可以使用 git checkout 切换到刚才新建的分支 git checkout dev-QC ...

  6. Git系列(四)、在IDEA操作Git本地仓库与连接远程Git仓库(推送、合并、拉取、克隆操作)

    在IDEA操作Git本地仓库与连接远程Git仓库 1.首先设置idea中绑定本地Git的可执行路径 2.随便建个项目,将项目初始化为Git管理的本地仓库 3.按命令操作顺序将项目添加并提交到本地仓库中 ...

  7. PyCharm 配置远程python解释器和在本地修改服务器代码

    使用场景 先说说自己的使用场景,我是在什么情况下,需要将IDE配置成这样的环境来方便我的工作. 首先,我需要在本地机子上写python代码,但是因为是机器学习相关的一些代码,有时候本机跑可能会很慢,或 ...

  8. 最实用的Git命令总结:新建本地分支、远程分支、关联和取消关联分支、清除本地和远程分支、合并分支、版本还原、tag命令、中文乱码解决方案、如何fork一个分支和修改后发起合并请求

    1.常用命令git.tag整理 1.新建分支本地分支 git branch <branch-name>远程分支 git push origin <branch-name>:&l ...

  9. git 远端更新合并到本地

    1.在github或者gitee上下载远端代码 2.此时远端代码默认分支一般是master(据说github现在已经把默认分支设置为main了),通过以下命令可以查看分支 git branch 3.创 ...

最新文章

  1. pyqt qdialog 默认按钮_python – QDialog无法从主窗口打开(pyQt)
  2. 030_SpringBoot全局属性配置文件
  3. ICPR 2020国际学术竞赛:大规模无噪声精细商品图像识别
  4. stm32 无符号整形_十进制字符串转化为无符号整数
  5. Java计算时间差_传统的SimpleDateFormat类
  6. Java多线程的4种实现方式
  7. 云图说|云数据库MySQL内核小版本升级全攻略
  8. 阿里云k8s私有仓库registry操作管理
  9. 前端—每天5道面试题(4)
  10. Android SQLite数据库 SQLiteOpenHelper的操作使用
  11. 四种方法实现两个等大数组之间内容交换
  12. 三星固态驱动安装失败_三星SSD无法安装Win10无法启动解决方案
  13. ArcGIS动态表格扩展模块Mapping and Charting Solutions使用教程及下载地址
  14. iis设置开启GZIP网页压缩功能
  15. 【juns项目】信用卡数据项目2-1:需求和效果展示
  16. 答云淡风轻:汉化Rails报错信息,部署发布,NT服务
  17. 0-100数字播报语音包
  18. Android常用开源项目
  19. 音视频之模拟今日头条列表视频
  20. 机器自动翻译古文拼音 - 十大宋词 - 扬州慢 淮左名都 姜夔

热门文章

  1. centos 如何登陆mysql_CentOS 配置MySQL允许远程登录
  2. C#操作 MongoDB【原创】
  3. 创业冲突的五种解决方法是_失眠原因不同,中医五种调理方法解决问题!
  4. 【C语言进阶深度学习记录】二 有符号与无符号
  5. 【C++深度剖析教程10】C++中的字符串类
  6. 【C++深度剖析教程2】C++经典问题解析之二 this指针与成员函数
  7. jmeter自定义并发用户数图形插件介绍
  8. Linux 普通用户拿到root权限及使用szrz命令上传下载文件
  9. 渗透测试流程(单台服务器)
  10. 汇编语言学习——第四章 第一个汇编程序