IDEA配置远程debug

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IDEA配置远程debug相关的知识,希望对你有一定的参考价值。

参考技术A 本地打断点debug程序我们都不陌生,但是有些时候我们可能需要把服务运行在远程服务器上调试,那怎么让服务在运行时跑到我们本地IDE的断点呢。这里面Java实现了一套远程debug协议,我们不用关注协议细节,只需要知道如何配置就好了,下面看如何配置。

第一步:

点击Edit Configurations选项

第二步:

在弹出的窗口左上方点击+号按钮。

第三步:

在+号列表中选择remote选项。

第四步:

设置remote名字,远程debug通信端口。
这里localhost是默认选项,根据我们服务部署在哪台机器上,修改成那台机器的IP地址即可。

第五步:

在服务的启动参数中添加第四步自动生成的
Command line arguments for remote JVM中的内容。

第六步:

启动远程服务,然后在IDAE中加断点,debug这个remote就可以连接到remote JVM进行远程debug了。

idea下远程debug配置

一. 背景:

在测试工作中,为方便发现代码中的逻辑问题,尝试使用远程debug模式,在测试过程中走查代码,不仅可以辅助测试减少与开发的沟通成本,更便于了解业务提升测试深度。

二. 配置方式:

1. 调试的配置方式主要为设置JVM的参数,使之工作在debug模式下,常用参数为:

-Xdebug -Xrunjdwp:transport=dt_socket,address=8012,server=y,suspend=n

2. 服务器端配置:

若项目为web项目,可在tomcat的启动程序如catalina.sh中添加如下:

若项目为javaapp项目,可在项目的default文件中添加如下:

3. idea配置

打开idea中的run/debug configurations, 选择remote类型,地址配置为服务器地址,端口配置为上述配置参数中的address,

4. 重启项目,即可开启远程debug模式

 

三. 参数解释:

1. JAVA支持调试功能,并提供了一个简单的调试工具JDB,其可支持设置断点及线程级的调试;

2. 各参数解释:

-Xdebug是通知JVM工作在DEBUG模式下

-Xrunjdwp是通知JVM使用(java debug wire protocol)来运行调试环境。该参数同时了一系列的调试选项:

transport指定了调试数据的传送方式,dt_socket是指用SOCKET模式,另有dt_shmem指用共享内存方式,其中,dt_shmem只适用于Windows平台。
server参数是指是否支持在server模式的VM中.
onthrow指明,当产生该类型的Exception时,JVM就会中断下来,进行调式。该参数可选。
launch指明,当JVM被中断下来时,执行的可执行程序。该参数可选
suspend指明,是否在调试客户端建立起来后,再执行JVM。
onuncaught(=y或n)指明出现uncaught exception 后,是否中断JVM的执行.

参考文档:

http://calvinliu.iteye.com/blog/876009

http://ks.netease.com/blog?id=8113

以上是关于IDEA配置远程debug的主要内容,如果未能解决你的问题,请参考以下文章

关于maven中配置远程仓库的问题

# Jvm 远程调试配置

# Jvm 远程调试配置

idea设置docker远程插件

idea tomcat 远程Ddbug调试

IDEA操作