IDEA 中如何使用 debug

IntelliJ IDEA调试技巧
本文详细介绍IntelliJ IDEA中的调试功能及快捷键使用方法,包括断点设置、查看变量值、运行时参数配置等,适合从Eclipse迁移过来的开发者。

文章转载自     http://blog.youkuaiyun.com/qq_27093465/article/details/64124330


IntelliJ IDEA使用教程 (总目录篇)


在调试代码的时候,你的项目得debug模式启动,也就是点那个绿色的甲虫启动服务器,然后,就可以在代码里面断点调试啦。
下面不要在意,这个快捷键具体是啥,因为,这个keymap是可以自己配置的,有的人keymap是mac版的,有的是Windows版的。
我的就是Windows,而且修改keymap为eclipse的keymap,因为我算是eclipse转过来的吧。
下面直接看图,详细解释,每一个按钮(按钮对应图中的数字)都是什么功能。


1,rerun XXX,这个就是直接重新跑某个程序。
2,这个相当于eclipse里面的f8,直接跑完,到下一个断点停下,没有就直接跑完程序。
3,停止项目或者程序。要是自己的main呢,点一下就停下了,要是Java web项目,则点2下,就把服务器给停了。
4,查看所有的断点设置情况。具体详情,下面有示意图,再细细解释。
5,直接取消所有断点,让所有断点无效。
6,要是你一不小心把这个下面的布局给弄乱了,你点这个,就把下面的布局给还原咯。
7,跳转到当前代码所执行的地方,也就是说你在看代码的时候,点到其他地方,一点这个按钮,就到了程序执行到当前哪行的代码的地方。
8,下一步,如果是方法,他是不会跳进去的。就是一行行的往下走。(eclipse里面的快捷键就是f6)
9,跳转到详情,如果下一行调试代码是可执行方法,就可以f5进去,查看这个方法的运行详细情况。重点就是点进去执行
10,从详情跳出去,和上面的9相反。
11,看字面意思就是跳转到下一个断点
12,这个点开之后,可以计算你想要看的代码段的值,后面详细上图。
13,看意思,同eclipse里面的watch,查看某个对象的值,自定义的对象。
14,把自定义的查看对象的值,分开到另一个tab页。
15,有时候当我们步入方法体之后,还想回退到方法体外,点这个按钮后,断点重新回到方法体之外。在继续还是可以再次进到方法内


查看断点处的某个对象的值,可以 如下几个方法:
1,选中对象后,鼠标悬停在对象上 2 秒左右
2,在watch里面添加这个对象,
3,下面也许会自动列出来你代码里面有的
4,使用上面图上标注的12的那个按钮


下面就再详细说下 4,12,13,14
4,查看所有的断点的详情,点开如下所示。
在图中condition中可以设置断点的条件,当i==4的时候,才停下。查看具体断点内容。



关于设置断点条件,还可以,直接在代码断点处,右键设置,完啦之后,done,设置完成。


12,这个用的也比较多,这个就比较随意。可以根据你的输入,计算你要的结果,不局限代码里面的变量啥的。
这个在debug的时候,使用起来是很方便的。


13,14,这2个点完之后,效果如下图,只是把自定义的变量和代码里面自带的变量分在两个tab页面展示。
你可以点13号按钮,自行添加,你想查看的变量的值。



关于调试的时候,设置运行时的参数,如下:


入口如下,2个地方都可以。


一般都是跑简单的main方法,跑main方法的时候,还带参数文件的,还是第一次,顺带做个记录吧。


最后,湿胸我说的这么详细,各位观众,有钱的捧个钱场,没钱的捧个人场。点个赞,留个言啥的,好不好呀。


更新:这个编辑器为了方便从eclipse编辑器转过来的同学们,他可以设置keymap的。具体看图。


因为我就是刚刚开始的时候,使用的就是eclipse,后来转过来的,所以,在使用的时候,就先设置了一下,这个键盘映射。使用的还是以前在eclipse上使用的快捷键。不需要再次去记一遍新的快捷键映射。这个也是极其方便的。

所以,在这个debug的快捷键上和使用eclipse时候,是一样的f5进去,f6是下一步。


IDEADebug功能可用于追踪代码流程、确认运行过程中参数变化、分析定位程序的错误、线上问题追踪以及学习第三方框架等。其使用步骤如下: 1. **准备工作**:确保项目环境配置正确,代码可正常编译运行。在进行远程Debug时,本地代码必须与线上代码一致,且只能在线上测试环境使用,以免造成系统堵塞无法使用 [^2][^3][^4]。 2. **主界面介绍**:熟悉IDEADebug主界面,了解各功能区域的分布和作用。 3. **各功能键详解**:掌握Debug模式下各功能键的用途,如继续执行、单步执行、进入方法、跳出方法等。 4. **查看变量**:在Debug过程中,可以查看当前作用域内变量的,帮助理解代码执行状态。 5. **更改变量**:在某些情况下,可直接在Debug界面更改变量的,以便测试不同的代码分支。 6. **设置断点条件**:可以为断点设置条件,只有当条件满足时,程序才会在该断点处暂停。 7. **计算表达式**:使用计算表达式功能,临时计算某个表达式的,辅助调试。 8. **回退操作**:若想回退到之前的代码执行状态,可利用回退功能,避免重新发起请求。 9. **强制返回**:在特定情况下,可强制方法返回指定的,改变代码执行流程。 10. **多线程调试**:当程序涉及多线程时,可进行多线程调试,观察各线程的执行情况。 11. **Stream调试**:对于Java 8及以上版本的Stream操作,可使用Stream调试功能,深入分析Stream的执行过程。 12. **远程Debug**:若要调试远程服务器上的应用程序,需进行相应的安装与配置,具体步骤包括配置远程服务器的调试参数,使本地IDE能够连接到远程应用进行调试 [^1]。 ### 代码示例 以下是一个简单的Java代码示例,可用于测试Debug功能: ```java public class DebugExample { public static void main(String[] args) { int a = 5; int b = 3; int result = add(a, b); System.out.println("结果是: " + result); } public static int add(int x, int y) { int sum = x + y; return sum; } } ``` 在`add`方法内部设置断点,然后以Debug模式运行程序,即可逐步调试代码,观察变量的变化。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值