使用IDE实现java端远程调试功能

使用IDE实现java端远程调试功能

  • [1. 整体描述](#1. 整体描述)
  • [2. 前期准备](#2. 前期准备)
  • [3. 具体操作](#3. 具体操作)
    • [3.1 修改启动命令](#3.1 修改启动命令)
    • [3.2 IDE配置](#3.2 IDE配置)
    • [3.3 打断点](#3.3 打断点)
    • [3.4 运行Debug](#3.4 运行Debug)
  • [4. 总结](#4. 总结)

1. 整体描述

在做项目时,有些时候,需要和第三方进行调式,但是第三方不在一起,需要进行远程调试,这时候就需要连接公司的服务器进行debug模式,本文就讲下怎么配置服务器远程调试。

2. 前期准备

如果需要远程调试,需要进行如下准备:

  1. 服务器,最好能在公网访问,公网访问不是必要条件
  2. 映射出远程调试端口,比如用8090,需要映射,如果用docker部署,可以参考我之前写的这篇文章:已有docker增加端口号,不用重新创建Docker
  3. 本地电脑使用IDE调试

3. 具体操作

这里就只写下使用Springboot框架下的配置方法:

3.1 修改启动命令

修改java程序的启动命令,增加如下:

bash 复制代码
-Xdebug  -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8090

其中8090就是远程调试的端口号

3.2 IDE配置

在IDE的RUN->Edit Configurations里面,添加:

按照上图选择,其中Host就是服务器的IP,PORT就是上文说的端口号,然后点击OK保存

3.3 打断点

在上述操作完成,可以在程序里打断点了。

3.4 运行Debug

然后选3.2创建的那个,点击右边的debug按钮就可以了,这个时候程序就会启动起来,如果程序运行到断点处,就会看到debug信息

如果运行时,提示无法建立连接,可能是端口号没开放,IDE无法访问,我第一次也是这样,后来研究添加端口的方式就可以了,开始想用nginx映射没成功,直接开端口可以了,就没再研究用nginx的方式了。

4. 总结

其实配置方式还是挺简单的,我已经按照上述配置方式成功进行远程调试了,中间有些坑就不说了,总之按照上述步骤是可以成功进行远程调试的,有了这种调试手段,还是很方便的,尤其是调试一些本地无法运行的代码的时候。

但是需要注意,这个远程调试只能一个人用,多人使用会有问题,因为本质还是socket通信的。

相关推荐
黄名富几秒前
Redis 附加功能(二)— 自动过期、流水线与事务及Lua脚本
java·数据库·redis·lua
love静思冥想2 分钟前
JMeter 使用详解
java·jmeter
言、雲5 分钟前
从tryLock()源码来出发,解析Redisson的重试机制和看门狗机制
java·开发语言·数据库
TT哇11 分钟前
【数据结构练习题】链表与LinkedList
java·数据结构·链表
汪洪墩34 分钟前
【Mars3d】设置backgroundImage、map.scene.skyBox、backgroundImage来回切换
开发语言·javascript·python·ecmascript·webgl·cesium
云空39 分钟前
《QT 5.14.1 搭建 opencv 环境全攻略》
开发语言·qt·opencv
Yvemil740 分钟前
《开启微服务之旅:Spring Boot 从入门到实践》(三)
java
Anna。。41 分钟前
Java入门2-idea 第五章:IO流(java.io包中)
java·开发语言·intellij-idea
乐闻x1 小时前
VSCode 插件开发实战(三):插件配置项自定义设置
ide·vscode·编辑器
.生产的驴1 小时前
SpringBoot 对接第三方登录 手机号登录 手机号验证 微信小程序登录 结合Redis SaToken
java·spring boot·redis·后端·缓存·微信小程序·maven