java项目远程调试

本文介绍了如何使用Java的远程调试模式提升工作效率,避免反复的提交、编译和部署。通过在目标服务器上添加JVM启动参数,配置IDEA的远程调试服务,并申请必要的网络权限,开发者可以在本地进行远程调试。详细步骤包括部署远程服务机器、申请网络权限以及启用IDEA的远程调试服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景
目前大家调试项目,比较通用的就是使用修改log进行调试,每次调试都会相应的修改配置log的地方,重复性的进行提交、编译、部署。比较浪费时间。由于环境连接问题,又需将项目部署到服务器上。所以,为了节省无用的时间开销,大家可以使用java的远程调试模式。在本地DEBUG服务器上代码。提升效率

使用
a) 目前已经部署好的一个机器是vmborderm5.m.jd.care (11.25.210.9),大家可以在这个机器上部署服务,然后开通自己机器到该机器的访问权限,使用idea的远程调试服务,即可使用本地debug的功能(步骤4,5)。
b) 如果想部署单独机器的debug环境,可以参照以下方案部署整套环境(步骤3,4,5)。

部署远程服务机器
a) 新增jvm启动参数:-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=1601
参数说明:transport=dt_socket 表示使用socket通信协议
server=y 表示该JVM用于调试
suspend=n 表示JVM 立即执行,不要等待调试者连接
address=1601 连接的端口(PS:此端口不要与tomcat启动端口重复)

b) 目前测试此步骤可以不加,如果有机器连接问题,使用此方法:修改tomcat的启动方式,修改tomcat启动文件startup.sh文件,将 exec “PRGDIR"/"PRGDIR"/"P

### 配置 IntelliJ IDEA 进行 Java 项目远程调试 为了设置和配置用于 Java 应用程序的远程调试环境,在 IntelliJ IDEA 中创建了一个简单的默认调试配置[^1]。这允许开发者在应用程序运行于不同机器上时,通过网络连接对其进行调试。 #### 设置远程 JVM 参数 当目标应用启动时,需确保其 JVM 启动参数包含了必要的选项来启用远程调试功能: ```bash -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 ``` 这段命令告诉 JVM 打开端口 `5005` 并等待来自 IDE 的调试器连接请求;其中 `suspend=n` 表示不阻塞应用直到有调试器附着前继续执行。 #### 创建远程调试配置 在 IntelliJ IDEA 内部完成如下操作以建立新的远程调试会话: - **打开编辑配置窗口**: 转到菜单栏中的 "Run" -> "Edit Configurations..." - **添加新配置**: 点击左上方加号按钮并选择 "Remote". - **填写必要字段**: - Name: 输入名称以便识别此特定配置. - Host: 如果在同一台计算机上,则保持为空或填入 localhost; 若跨网段则输入服务器 IP 地址. - Port: 填写之前指定给 JDWP 的监听端口号 (通常是 5005). 此时已经成功建立了基本的远程调试框架. 对于更复杂的测试场景,可以考虑集成单元测试库简化参数化测试编写过程,例如使用 Burst 或者 JUnitParams 来提高效率和可读性[^2]. 不过这些工具主要用于本地开发阶段而非直接关联至远程调试流程中。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值