IDEA中JAVA代码调试技巧
提示:以下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代码调试技巧相关推荐
- 代码调试技巧小集合(雨中飞燕出品)
// ************************************************************ // // 本文源自飞燕之家在线测评论坛http://yzfy.org/ ...
- 在 IDEA 中的各种调试技巧
文章目录 在 IDEA 中的各种调试技巧,轻松定位 Bug 一.Debug开篇 二.基本用法&快捷键 三.变量查看 四.计算表达式 五.智能步入 六.断点条件设置 七.多线程调试 八.回退断点 ...
- vs c语言程序调试方法,VS2015中的常用调试技巧分享
原标题:VS2015中的常用调试技巧分享 为什么要学习调试? 调试(Debug)是作为一个程序员必须要学会的东西,学会调试可以极大的提高开发效率,排错时间,很多人不喜欢调试,但我认为这是一个很不可取的 ...
- 转:Python 代码调试技巧
Python 代码调试技巧 转载于:https://www.cnblogs.com/kira2will/p/4254754.html
- js中变量和jsp中java代码中变量互相访问解决方案
1.js变量获取jsp页面中java代码的变量值. 方法:var JS变量名 = <%=JAVA变量名 %> 2.java代码获取js变量的值. 说明:在JSP中:Java部分是在 ...
- js变量和java变量相等,js中变量和jsp中java代码中变量互相访问解决方案
1.js变量获取jsp页面中java代码的变量值. 方法:var JS变量名 = 我们常常会将js文件和jsp文件分开写,在js文件中,上面的方法似乎不管用了. 也可以通过变通的方法来解决: a.js ...
- JSP文件中Java代码的几种形式(JSP脚本)
文章目录 第一种形式(Java 代码片段) 第二种形式(JSP 表达式) 第三种形式(JSP 声明) 第四种形式(JSP 指令) 第一种形式(Java 代码片段) 原样复制到 service() 方法 ...
- Java代码调试(jer的问题)
Java代码调试 问题解答 今天准备做项目,调试代码时,发现的一个问题,当时十分郁闷. 项目上全是叉叉 无法解析类型 java.lang.Object等.从必需的 .class 文件间接引用了它 (以 ...
- 【转】Python 代码调试技巧
原文网址:http://www.ibm.com/developerworks/cn/linux/l-cn-pythondebugger/ Debug 对于任何开发人员都是一项非常重要的技能,它能够帮助 ...
最新文章
- 广东省生态土壤所孙蔚旻团队FEMS: 砷锑污染土壤剖面的微生物世界
- 不努力提高效率,小姐姐都被人追走了:K8S一键部署了解一下?
- matlab基础(0)
- anaconda python命令_Anaconda常用命令
- des解密 given final_真相解密创新Aurvana Live SE评测怎么样?【使用一个月后感受实情爆料!!!...
- php 选择 出现列表,php – 如何从加权列表中选择4个唯一项?
- JAVA对象集合转化为xml转换_xml转为Map集合以及对象转化为xml
- 分布式系统认证方案_分布式系统认证方案_Spring Security OAuth2.0认证授权---springcloud工作笔记136
- http-server搭建web服务器
- 关于安全校验代码的一些心得
- xml 增 删 改 查
- Codeforces 2A. Winner
- RSA加密解密及RSA加签验签
- 国内可外用免费语料库下载资源汇总, 语言翻译必备:国内外23个语料库推荐
- Win7启动慢,元凶竟是闲置eSATA接口,快下补丁
- 【下载所有XKCD漫画】 详细解析
- (转)网通电信域名劫持怎么办
- QT开发中常用的快捷键(Windows+QT)
- java使用poi操作ppt(导入,导出,读取,添加,拼接,替换文本,页面排序)
- map与multimap
热门文章
- Python零基础速成班-第9讲-Python面向对象编程(上),对象和类、初始化、继承、重写、多态、类方法、组合
- 镜头跑焦测试软件,简易的测试镜头跑焦和矫正AF微调办法
- 一文解决Opencv四大经典算子——sobel算子、scharr算子、laplacian算子、canny算子
- 以“人民为中心”重新定义全球新型智慧城市, 2021-2022年中国新型智慧城市百强榜权威发布!
- The Devil Wears Prada-9
- DDGDataCache OC文件缓存,代码简单,功能强大
- html左侧导航栏制作,20个巧用侧边栏的网页设计作品
- isee图片专家批量处理图片大小教程
- 在职场中,你这一生能够混到哪个“层次”,取决于这三个人
- 非正式纳新题解(C语言)