IDEA中强大的debug功能

1、基本用法

 1)Show Execution Point(+F10):如果你的光标在其它行或其它页面,点击这个按钮可跳转到当前代码执行的行。                                   2)Step Over(F8):步过,一行一行地往下走,如果这一行上有方法不会进入方法。                                                                               3)Step Into (F7):步入,如果当前行有方法,可以进入方法内部,一般用于进入自定义方法内,不会进入官方类库的方法。                   4) Force Step Into (+ + F7):强制步入,能进入任何方法,查看底层源码的时候可以用这个进入官方类库的方法。                                       5) Step Out (+ F8):步出,从步入的方法内退出到方法调用处,此时方法已执行完毕,只是还没有完成赋值。                                             6) Drop Frame (默认无):回退断点,回退到上一次的debug点。                                                                                                                 7) Run to Cursor (+ F9):运行到光标处,你可以将光标定位到你需要查看的那一行,然后使用这个功能,代码会运行至光标行,而不需要打断点。                                                                                                                                                                                                       8) Evaluate Expression ( + F8):计算表达式可以改变变量的值,这样有时候就能很方便我们去调试各种值的情况了。后面章节详细说明。

2、左侧工具栏

1)Rerun 'xxxx'(^+F5):重新运行程序,会关闭服务后重新启动程序。

2)Update 'xxxx' application ( + F10): 更新程序 ,一般在你的代码有改动后可执行这个功能。这个功能需要配置代码为热部署。
3)Resume Program (F9): 恢复程序 ,比如,你在第20行和25行有两个断点,当前运行至第20行,按F9,则运行到下一个断点(即第25行),再按F9,则运行完整个流程,因为后面已经没有断点了。
4)Pause Program:暂停程序,启用Debug。目前没发现具体用法。
5)Stop 'xxx' ( + F2): 连续按两下,关闭程序 。有时候你会发现关闭服务再启动时,报端口被占用,这是因为没完全关闭服务的原因,你就需要查杀所有JVM进程了。
6)View Breakpoints ( +  + F8): 查看所有断点 ,后面章节会涉及到。
7)Mute Breakpoints:哑的断点,选择这个后, 所有断点变为灰色,断点失效 ,按F9则可以直接运行完程序。再次点击,断点变为红色,有效。如果只想使某一个断点失效,可以在断点上右键取消Enabled,如图2.4,则该行断点失效。
其中第2、6、7项平时多用,更新应用热部署;查看所有断点;失效所有断点
 

3、智能步入

在菜单Run-Smart Step Into中可以选择一行代码中某个方法进入,断点代码行中的方法较多时,可以选择其中一个方法步入。

4、断点条件设置

通过设置断点条件,在满足条件时,才停在断点处,否则直接运行。

1)方法如上图 ,当队列中取出的对象的Id值等于1的时候则在此断点处停。

2)方法如下图,在展示所有断点的地方设置:log:则会将当前断点行输出到控制台;Evaluate and log:可以在执行这行代码时计算表达式的值,并将结果输出到控制台。

3)设置异常断点,添加一个异常断点,断点会自动定位到出现异常的代码行。

多线程调试

先设置断点为线程级别的,这样每个线程都会在断点处停止,可以选择其中一个线程往下执行

选择某个线程去执行,

回退断点、中断debug,强制方法返回某个值,详细摘自:

https://www.cnblogs.com/chiangchou/archive/2017/09/05/idea-debug.html

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值