IDEA 调试技巧,比 Eclipse 强太多了
★★★建议星标我们★★★
文章插图
文章插图
2020年Java原创面试题库连载中
【000期】Java最全面试题库思维导图
【020期】JavaSE系列面试题汇总(共18篇)
【028期】JavaWeb系列面试题汇总(共10篇)
【042期】JavaEE系列面试题汇总(共13篇)
【IDEA 调试技巧,比 Eclipse 强太多了】【049期】数据库系列面试题汇总(共6篇)
【053期】中间件系列面试题汇总(共3篇)
【065期】数据结构与算法面试题汇总(共11篇)
【076期】分布式面试题汇总(共10篇)
【077期】综合面试题系列(一)
【078期】综合面试题系列(二)
【079期】综合面试题系列(三)
【080期】综合面试题系列(四)
【081期】综合面试题系列(五)
【082期】综合面试题系列(六)
【083期】综合面试题系列(七)
【084期】综合面试题系列(八)
【085期】综合面试题系列(九)
【086期】综合面试题系列(十)
【087期】综合面试题系列(十一)
【088期】综合面试题系列(十二)
【089期】综合面试题系列(十三)
更多内容 , 点击上面蓝字查看
文章插图
来源:一、条件断点循环中经常用到这个技巧 , 比如:遍历1个大List的过程中 , 想让断点停在某个特定值 。
文章插图
参考上图 , 在断点的位置 , 右击断点旁边的小红点 , 会出来一个界面 , 在Condition这里填入断点条件即可 , 这样调试时 , 就会自动停在i=10的位置
文章插图
二、回到"上一步"该技巧最适合特别复杂的方法套方法的场景 , 好不容易跑起来 , 一不小心手一抖 , 断点过去了 , 想回过头看看刚才的变量值 , 如果不知道该技巧 , 只能再跑一遍 。
文章插图
参考上图 , method1方法调用method2 , 当前断点的位置j=100 , 点击上图红色箭头位置的Drop Frame图标后 , 时间穿越了
文章插图
回到了method1刚开始调用的时候 , 变量i变成了99 , 没毛病吧 , 老铁们 , 是不是很6 :)
注:好奇心是人类进步的阶梯 , 如果想知道为啥这个功能叫Drop Frame , 而不是类似Back To Previous 之类的 , 可以去翻翻JVM的书 , JVM内部以栈帧为单位保存线程的运行状态 , drop frame即扔掉当前运行的栈帧 , 这样当前“指针”的位置 , 就自然到了上一帧的位置 。
三、多线程调试多线程同时运行时 , 谁先执行 , 谁后执行 , 完全是看CPU心情的 , 无法控制先后 , 运行时可能没什么问题 , 但是调试时就比较麻烦了 , 最明显的就是断点乱跳 , 一会儿停这个线程 , 一会儿停在另一个线程 , 比如下图:
文章插图
如果想希望下一个断点位置是第2句诗句 , 可能要失望了:
文章插图
如果想让线程在调试时 , 想按自己的愿意来 , 让它停在哪个线程就停在哪个线程 , 可以在图中3个断点的小红点上右击 ,
文章插图
即:Suspend挂起的条件是按每个线程来 , 而非All 。 把这3个断点都这么设置后 , 再来一发试试
文章插图
注意上图中的红框位置 , 断点停下来时 , 这个下拉框可以看到各个线程(注:给线程起个容易识别的名字是个好习惯!) , 我们可以选择线程“天空中的飞鸟”
文章插图
断点如愿停在了第2句诗 。
四、远程调试这也是一个装B的利器 , 本机不用启动项目 , 只要有源代码 , 可以在本机直接远程调试服务器上的代码 , 打开姿势如下:
4、1 项目启动时 , 先允许远程调试
java -server -Xms512m-Xmx512m-Xdebug-Xnoagent-Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9081-Djava.ext.dirs=. ${main_class}
- 页面|如何简单、快速制作流程图?上班族的画图技巧get
- 查询|数据太多容易搞混?掌握这几个Excel小技巧,办公思路更清晰
- 设置|iPhone拍照小技巧:保留常用设置更高效
- 每日|【每日idea 分享】12月1日:带朋友一起网上购物;线上笔记本应用程序
- 八大|黑五的购物网页该怎么设计?!电商UI设计八大技巧来了
- 格式化|利用好这3个隐藏技巧,Power BI 开发体验更丝滑
- 明细|微言普法——取证小技巧调取微信转账明细记录
- 效果|这个让你相见恨晚的技巧,能让PPT排版更加有设计感,推荐学习
- 一个免费、简单、只需要手机就可以完成的Kindle 传书小技巧!|Kindle 小技巧 | 简单
- 媒介|智媒介:软文发布文案的核心写作技巧介绍
