Intellij IDEA debug断点调试技巧总结(中)

简介: Intellij IDEA debug断点调试技巧总结(中)

竖排按钮 - ||

image.png

第六个 Clear All:清空控制台的输出

3 变量查看

  1. 在IDEA中,参数所在行后面会显示当前变量的值

image.png

光标悬停到参数上,显示当前变量信息,点击打开详情

image.png

image.png

在Variables里查看,这里显示当前方法里的所有变量。

image.png

在Watches里,点击New Watch,输入需要查看的变量。

image.png

如果你发现你没有Watches,可能在下图所在的地方。

image.png

计算表达式

在前面提到的计算表达式如图4.1的按钮,Evaluate Expression (Alt + F8) 。可以使用这个操作在调试过程中计算某个表达式的值,而不用再去打印信息。

1、按Alt + F8或按钮,或者,你可以选中某个表达式再Alt + F8,弹出计算表达式的窗口,如下,回车或点击Evaluate计算表达式的值。

   这个表达式不仅可以是一般变量或参数,也可以是方法,当你的一行代码中调用了几个方法时,就可以通过这种方式查看查看某个方法的返回值。

 2、设置变量,在计算表达式的框里,可以改变变量的值,这样有时候就能很方便我们去调试各种值的情况了不是。

智能步入

想想,一行代码里有好几个方法,怎么只选择某一个方法进入。之前提到过使用Step Into (Alt + F7)或者 Force Step Into (Alt + Shift + F7)进入到方法内部,但这两个操作会根据方法调用顺序依次进入,这比较麻烦。

那么智能步入就很方便了,智能步入,这个功能在Run里可以看到,Smart Step Into (Shift + F7)

image.png

按Shift + F7,会自动定位到当前断点行,并列出需要进入的方法,如图5.2,点击方法进入方法内部。

如果只有一个方法,则直接进入,类似Force Step Into。

断点条件设置

在满足条件时,才停在断点,否则继续运行。

在遍历一个较大集合时,在循环内设置一个断点,如果还一个个去看变量的值就很没有意义,说不定你这次遍历手滑错过了这个值得重新来次。

在断点上右键设置当前断点的条件

image.png

点击View Breakpoints (Ctrl + Shift + F8),查看所有断点

image.png

Java Line Breakpoints 显示了所有的断点,在右边勾选Condition,设置断点条件

image.png

勾选Log message to console,则会将当前断点行输出到控制台

  • 勾选Evaluate and log,可在执行这行代码时计算表达式的值,并将结果输出到控制台
  • image.png

Filters过滤

  • Instance filters:实例过滤,输入实例ID(如图6.5中的实例ID)
  • Class filters:类过滤,根据类名过滤
  • Pass count:用于循环中,如果断点在循环中,可以设置该值,循环多少次后停在断点处,之后的循环都会停在断点处。

异常断点

通过设置异常断点,在程序中出现需要拦截的异常时,会自动定位到异常行。


如图6.6,点击+号添加Java Exception Breakpoints,添加异常断点。然后输入需要断点的异常类,如图6.7,之后可以在Java Exception Breakpoints里看到添加的异常断点。

我这里添加了一个NullPointerException异常断点,如图6.8,出现空指针异常后,自动定位在空指针异常行。

目录
相关文章
|
10月前
|
Java 应用服务中间件 Maven
在IntelliJ IDEA中如何配置使用Maven以创建Tomcat环境
所以,别担心这些工具看起来有些吓人,实际上这些都是为了帮助你更好的完成工作的工具,就像超市里的各种烹饪工具一样,尽管它们看起来可能很复杂,但只要你学会用,它们会为你烹饪出一道道美妙的食物。这就是学习新技能的乐趣,让我们一起享受这个过程,攀登知识的高峰!
634 27
|
12月前
|
IDE 程序员 开发工具
只用正版!教你5个方法,白嫖JetBrains家族的所有产品,包含:IntelliJ IDEA、PyCharm、WebStorm、CLion、Rider
程序员晚枫分享了5种官方认证的免费使用JetBrains家族产品的方法,包括内容创作者计划、开源项目支持、教育许可证、用户组支持和开发者认可计划。这些方法帮助个人开发者与小型团队合法获取强大开发工具,如IntelliJ IDEA、PyCharm等,降低开发成本,提升效率。同时提醒大家遵守使用规范,尊重知识产权。
2102 13
|
IDE Oracle Java
day4:JDK、IntelliJ IDEA的安装和环境变量配置
【7月更文挑战第4天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
683 0
|
网络协议 安全 Linux
在IntelliJ IDEA中使用固定公网地址远程SSH连接服务器环境进行开发
在IntelliJ IDEA中使用固定公网地址远程SSH连接服务器环境进行开发
804 2
|
Java
idea远程debug应用
idea 中debug现场部署的Java应用
209 1
|
IDE Java Scala
IntelliJ IDEA 2023.3 最新变化2
IntelliJ IDEA 2023.3 最新变化
321 1
Idea 进行远程服务器debug操作
Idea 进行远程服务器debug操作
1362 0
|
缓存 Java Maven
IntelliJ IDEA中无法加载jar包导致出现“cannot resolve symbol...”问题的解决
IntelliJ IDEA中无法加载jar包导致出现“cannot resolve symbol...”问题的解决
885 0
|
存储 Oracle Java
Java面试题:描述如何使用Eclipse或IntelliJ IDEA进行Java开发?
Java面试题:描述如何使用Eclipse或IntelliJ IDEA进行Java开发?
222 0
idea远程调试debug
配置idea远程debug
213 0