intellijidea2017debug断点调试技巧与总结详解篇

jpfss jpfss     2023-02-17     124

关键词:

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,有时候当我们步入方法体之后,还想回退到方法体外,点这个按钮后,断点重新回到方法体之外。在继续还是可以再次进到方法内这个很好的,假设你手快,跳过想断点的方法,然后这个drop frame,出去之后,就可以再次debug啦。这个很是着重介绍一下,就算你只打一个断点,一不小心跑了,不怕,点这个,推出,然后再执行,还是会再次进入断点的。这个很管用的,要是不知道的话,就的再从头到尾的执行一遍,很是麻烦哦。所以,再使劲的强调一下这个高科技按钮

 

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

5,alter + click,按住alter,然后点击想看的变量,就出现啦变量的值,这个厉害,感谢 40 楼老铁的评论。

 

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

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

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

技术分享图片

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

技术分享图片

还有个需求,就是

在调试代码的时候,实时的修改,运行状态的代码变量的值。

技术分享图片

仔细看下图,就知道,怎么在实时调试代码的时候,怎么设置某些变量的值,可以看到,我上面在输入a之后,下面就有类似你写代码时候的提示,你就可以在这地方修改变量的值啦

(更新)

上面的描述好像有问题,不应该使用watch去修改变量的值,具体看图吧。

技术分享图片

可以看到,我在watch里面写了行代码,给这个list add一个“123456”,然后发现,代码走一行,他就add一次,然后就发现我上面写的不对啦,不是这么来修改正在运行的变量的值的。

技术分享图片

应该像这张图这么来修改变量的值,这个是一次性操作的。

技术分享图片

这个地方,快捷键是f2,具体的快捷键可能不一样,f2快捷键之后,就会出格框,里面输入你想修改的值,就可以运行的时候,修改变量的值。这个还有你修改的记录。

关于调试的时候,

设置运行时的参数如下:

技术分享图片

技术分享图片技术分享图片

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

技术分享图片

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

 

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

我写完文章,给自己点个赞,不过分吧,
不过分,那我可就点啦啊。
我先点为敬,你们随意。大家随意。不要客气。。。

 

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

技术分享图片

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

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

有时候发现,你打了断点,但是,代码却么有停下来,注意下图

技术分享图片

可以看到,打断点时候,有的是对号,有的是个x,x是不可执行的代码,所以,你要是在代码类似的地方打断点的话,代码就不会停下来,因为这个断点位置有点尴尬。































intellijidea调试(debug)时非常慢的原因

IntelliJ IDEA开发时,发现有时Debug时tomcat启动的非常慢,需要等待超过20分钟,但有时就很快,经查找发现是断点设置问题, 若断点设置在方法名上,debug时就会非常慢,如图:一般情况下,方法名不需要的debug的,所以去... 查看详情

intellijidea怎么在运行调试阶段设置断点,的相关推荐

参考技术A和eclipse一样呀。。断点也是打在行号的后面进入断点之后下面会自动弹出debug窗口。。。和类似的。启动web程序的时候要用debug模式启动。main函数的话右键Run"debugxxxx.Main()" 查看详情

intellijidea调试web项目只能调试一次,第二次不能进入断点

debug模式启动服务,打上断点,然后浏览器发送请求,进入断点,F8单步,F9走完,然后再次刷新浏览器发送请求,无法进入断点,然后重启服务,再次刷新,又可以进入断点,也就是启动一次,只能debug一次这特么什么情况??... 查看详情

intellijidea怎样关闭所有的debug断点,??

你禁用了断点....你只要取消禁用即可。intellijideadebug①以debug模式启动服务,左边的一个按钮则是以run模式启动。在开发中,我一般会直接启动debug模式,方便随时调试代码。②断点:在左边行号栏单击左键,或者快捷键ctrl+f8打... 查看详情

在intellijidea中使用debug

Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化。通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码。一、Debug... 查看详情

intellijidea断点不生效,程序走到断点处直接过去javaweb是debug模式启动,之前能调试

参考技术A尊敬的联想用户您好!‍<spanstyle="font-family:宋体;mso-ascii-font-family:Calibri;mso-ascii-theme-font:minor-latin;mso-fareast-font-family:宋体;mso-fareast-theme-font:minor-fareast;mso-hansi-font-family:Calibri;mso-hansi-theme-font:minor-latin">您好!<spanstyl... 查看详情

intellijidea中debug的使用技巧(代码片段)

...中对debug的一些小结 (一)基本介绍本篇文章是基于IntelliJIDEA2018.3.2版本,Debug模式的图标因为不同版本有点点小区别,但是功能基本一样。如图红色框框甲壳虫模样的便是我们本文中的debug启动模式,在日常开发中也是用这... 查看详情

intellijidea使用指南

正确导入项目查看配置文件或java类是否导入正常,避免编译无法找到配置文件运行当前上下文Shift+F10运行主程序Shift+F9Debug运行主程序在当前可运行列表中选择一个运行Alt+Shift+F10运行Alt+Shift+F9Debug运行断点... 查看详情

节点调试:为啥我不能设置断点?

】节点调试:为啥我不能设置断点?【英文标题】:node-debug:whycan\'tIsetabreakpoint?节点调试:为什么我不能设置断点?【发布时间】:2017-04-0509:09:03【问题描述】:我正在使用node-debug并且知道我要为其设置断点的文件和行。发生... 查看详情

idea中如何使用debug操作

...运行流程去学习三方框架的源码。  所以学习下如何在IntellijIDEA中使用好Debug,主要包括如下内容:    一、Debug开篇    二、基本用法&快捷键    三、变量查看    四、计算表达式    五、智能步入... 查看详情

intellijidea调试功能使用总结(stepover/stepinto/forcestepinto/stepout等)

1.设置断点选定要设置断点的代码行,在行号的区域后面单击鼠标左键即可。2.开启调试会话点击红色箭头指向的小虫子,开始进入调试。IDE下方出现Debug视图,红色的箭头指向的是现在调试程序停留的代码行,方法f2()中,程序... 查看详情

intellijidea的debug调试为什么这么强?我挖出了背后的技术。。(代码片段)

点击关注公众号,Java干货及时送达来源:https://zhenbianshu.github.io对Debug的好奇初学Java时,我对IDEA的Debug非常好奇,不止是它能查看断点的上下文环境,更神奇的是我可以在断点处使用它的Evaluate功能直接执行某... 查看详情

eclipse的debug调试技巧

...当前线程方法调用栈,以及代码行数(有调试信息的代码)断点Breakpoints窗口=>断点列表窗口,可以方便增加断点,设置断点条件,删除断点等变量Variables窗口=>显示当前方法的本地变量,非static方法,包含this应用,可以修改变... 查看详情

ideadebug断点调试技巧

...bug模式下的界面。  如下是在IDEA中启动Debug模式,进入断点后的界面,我这里是Windows,可能和Mac的图标等会有些不一样。就简单 查看详情

eclipse的debug调试技巧大全

...当前线程方法调用栈,以及代码行数(有调试信息的代码)断点Breakpoints窗口=>断点列表窗口,可以方便增加断点,设置断点条件,删除断点等变量Variables窗口=>显示当前方法的本地变量,非static方法,包含this应用,可以修改变... 查看详情

intellijidea下go项目开启debug调试

1、新建Go项目,创建入口go文件(Test1.go),随便写点啥,比如:packagemainimport"fmt"funcmain(){fmt.Println("aaaa")} 2、新增运行配置信息:3、这一步选择很重要,选择:GoApplication,而不是GoSingleFile4、随便起个名字,设置go文件路径:5、... 查看详情

day04(debug基础知识练习)

...行过程来调试程序。1.2Debug操作流程Debug调试,又被称为断点调试,断点其实是一个标记,告诉我们从哪里开始查看如何加断点如何运行加了断点的程序看哪里点哪里如何删除断点 1.2.1如何加断点选择要设置断点的代码行,在... 查看详情

androidstudio中使用断点调试程序

1.设置断点在希望中断的位置左边label一下,设置一个断点。例如下方图片所示在ActivityResultRegistry类中的第147行设置了一个断点,以及在365行dispatchResult()方法处设置了一个断点。设置好断点后,可以在菜单栏依次点击Run->ViewBre... 查看详情