提示:以下debug调试方式仅适用于在IDEA中使用

文章目录

  • 前言
  • 一、条件断点调试
  • 二、回到“上一步”调试
  • 三、多线程调试
  • 四、远程调试
    • (1)项目启动时,先允许远程调试:
    • (2)idea中设置远程调试
  • 五、临时执行表达式/修改变量的运行值
    • (1)第一种方式
    • (2)第二种方式

前言

整理IDEA中一些调试的技巧。


提示:以下是本篇文章正文内容

一、条件断点调试

条件断点一般在循环遍历的时候用到。
在断点的位置,右击断点旁边的小红点,会出来一个界面,在Condition这里填入断点条件即可,这样调试时,就会自动停在i==5的位置。
如图:

Debug模式,直接停留在i=5的位置
如图:


二、回到“上一步”调试

适用于当断点过去了,想回过头看看刚才的变量值。
如图:

返回上一步,方法调用的地方
如图:


三、多线程调试

多线程同时运行时,谁先执行,谁后执行,无法控制先后,调试时比较麻烦,最明显的就是断点乱跳,一会儿停这个线程,一会儿停在另一个线程,如果想让线程在调试时,想按自己的愿意来,让它停在哪个线程就停在哪个线程,可以如下设置:
如下鼠标右键断点,选择Thread,多个线程全部设置。
如图:

设置完成后,debug模式启动,在图中红框处选择相应的线程。
如图:


四、远程调试

本机不用启动项目,只要有源代码,可以在本机直接远程调试服务器上的代码。

(1)项目启动时,先允许远程调试:

nohup java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 ancb-logistics-job.jar 2>&1 > /dev/null &
注意:远程调试从技术上讲,就是在本机与远程建立scoket通讯,所以端口不要冲突,而且本机要允许访问远程端口,另外这一段参数,放要在-jar 或 ${main_class}的前面。

(2)idea中设置远程调试

如图:

设置相应的ip和远程调试的端口。(端口为启动脚本address[=5005]的值)
如图:


五、临时执行表达式/修改变量的运行值

(1)第一种方式



(2)第二种方式



IDEA中JAVA代码调试技巧相关推荐

  1. 代码调试技巧小集合(雨中飞燕出品)

    // ************************************************************ // // 本文源自飞燕之家在线测评论坛http://yzfy.org/ ...

  2. 在 IDEA 中的各种调试技巧

    文章目录 在 IDEA 中的各种调试技巧,轻松定位 Bug 一.Debug开篇 二.基本用法&快捷键 三.变量查看 四.计算表达式 五.智能步入 六.断点条件设置 七.多线程调试 八.回退断点 ...

  3. vs c语言程序调试方法,VS2015中的常用调试技巧分享

    原标题:VS2015中的常用调试技巧分享 为什么要学习调试? 调试(Debug)是作为一个程序员必须要学会的东西,学会调试可以极大的提高开发效率,排错时间,很多人不喜欢调试,但我认为这是一个很不可取的 ...

  4. 转:Python 代码调试技巧

    Python 代码调试技巧 转载于:https://www.cnblogs.com/kira2will/p/4254754.html

  5. js中变量和jsp中java代码中变量互相访问解决方案

    1.js变量获取jsp页面中java代码的变量值.  方法:var JS变量名 = <%=JAVA变量名 %>   2.java代码获取js变量的值.  说明:在JSP中:Java部分是在 ...

  6. js变量和java变量相等,js中变量和jsp中java代码中变量互相访问解决方案

    1.js变量获取jsp页面中java代码的变量值. 方法:var JS变量名 = 我们常常会将js文件和jsp文件分开写,在js文件中,上面的方法似乎不管用了. 也可以通过变通的方法来解决: a.js ...

  7. JSP文件中Java代码的几种形式(JSP脚本)

    文章目录 第一种形式(Java 代码片段) 第二种形式(JSP 表达式) 第三种形式(JSP 声明) 第四种形式(JSP 指令) 第一种形式(Java 代码片段) 原样复制到 service() 方法 ...

  8. Java代码调试(jer的问题)

    Java代码调试 问题解答 今天准备做项目,调试代码时,发现的一个问题,当时十分郁闷. 项目上全是叉叉 无法解析类型 java.lang.Object等.从必需的 .class 文件间接引用了它 (以 ...

  9. 【转】Python 代码调试技巧

    原文网址:http://www.ibm.com/developerworks/cn/linux/l-cn-pythondebugger/ Debug 对于任何开发人员都是一项非常重要的技能,它能够帮助 ...

最新文章

  1. 广东省生态土壤所孙蔚旻团队FEMS: 砷锑污染土壤剖面的微生物世界
  2. 不努力提高效率,小姐姐都被人追走了:K8S一键部署了解一下?
  3. matlab基础(0)
  4. anaconda python命令_Anaconda常用命令
  5. des解密 given final_真相解密创新Aurvana Live SE评测怎么样?【使用一个月后感受实情爆料!!!...
  6. php 选择 出现列表,php – 如何从加权列表中选择4个唯一项?
  7. JAVA对象集合转化为xml转换_xml转为Map集合以及对象转化为xml
  8. 分布式系统认证方案_分布式系统认证方案_Spring Security OAuth2.0认证授权---springcloud工作笔记136
  9. http-server搭建web服务器
  10. 关于安全校验代码的一些心得
  11. xml 增 删 改 查
  12. Codeforces 2A. Winner
  13. RSA加密解密及RSA加签验签
  14. 国内可外用免费语料库下载资源汇总, 语言翻译必备:国内外23个语料库推荐
  15. Win7启动慢,元凶竟是闲置eSATA接口,快下补丁
  16. 【下载所有XKCD漫画】 详细解析
  17. (转)网通电信域名劫持怎么办
  18. QT开发中常用的快捷键(Windows+QT)
  19. java使用poi操作ppt(导入,导出,读取,添加,拼接,替换文本,页面排序)
  20. map与multimap

热门文章

  1. Python零基础速成班-第9讲-Python面向对象编程(上),对象和类、初始化、继承、重写、多态、类方法、组合
  2. 镜头跑焦测试软件,简易的测试镜头跑焦和矫正AF微调办法
  3. 一文解决Opencv四大经典算子——sobel算子、scharr算子、laplacian算子、canny算子
  4. 以“人民为中心”重新定义全球新型智慧城市, 2021-2022年中国新型智慧城市百强榜权威发布!
  5. The Devil Wears Prada-9
  6. DDGDataCache OC文件缓存,代码简单,功能强大
  7. html左侧导航栏制作,20个巧用侧边栏的网页设计作品
  8. isee图片专家批量处理图片大小教程
  9. 在职场中,你这一生能够混到哪个“层次”,取决于这三个人
  10. 非正式纳新题解(C语言)