Eclipse中的Debug
一、Debug的基本过程
- 设置断点(双击待设断点左边行号处)
- 进入Debug模式(在待调试类上右键>调试方式,根据需求选择)
- 开始调试
二、Debug中的常用操作
- 继续执行【F8】:继续运行程序,直到下一个断点时挂起。
- 单步跳入【F5】:执行下一行有效代码,检测到调用方法时,进入被调用的方法。
- (有效代码:本次运行中要执行的代码。比如if判断条件为false时,if{}内即为无效代码)
- 单步跳过【F6】:执行下一行有效代码。
- 单步返回【F7】:执行完当前方法(直到断点处),返回到调用处(如果有)。(无调用者时,F7无效)
- 单步执行过滤器:激活后,在单步执行(F5/F6/F7)时,遇到被过滤的部分,将不会停下,继续执行。一般将JDK或者其他库中的底层代码过滤掉,也可以过滤自己的代码库中的框架部分代码。(设置:窗口>首选项>Java>调试>单步执行过滤)
- 暂挂/恢复:暂时挂起一个线程。一般用于多线程程序的调试。
- 拖放至帧:回到当前方法的开始处重新执行,之前执行过程中变量的变化全部重置为开始时的状态,但在程序外产生的作用不可逆(比如数据库操作、文件操作等)。可以配合修改代码、改变变量值等,反复调试关注的某一段代码。【其实不止是当前方法,还可以通过点击当前调用栈中的任意一个帧(起始帧除外),跳到那里】
- 终止:强行关闭所有线程,结束本次调试。
三、断点简述
1.断点类型
- 行断点:执行到该行时暂挂。最普通的断点形式,在行号处双击添加。
- 方法断点:进入/退出方法时暂挂。将断点打在方法的入口处。特点:可以将断点打在JDK源码中(行断点不行),从而查看方法的调用栈。
- 异常断点:发生异常时暂挂。运行>添加Java异常断点,或点击添加异常断点。可用占位符*和?,分别表示任意字符串和任意字符。
- 类加载断点:加载指定类时暂挂。 运行>添加类装入断点,来添加类加载断点。在调试类加载(静态方法、静态代码块等)时使用。
- 变量观察点:指定成员变量发生指定变化时暂挂。在声明成员变量处的行号双击添加。可以选择在该变量访问、修改或达成指定条件时挂起。
2.断点属性
在断点上右键>断点属性来设置。上述断点均可设置这些属性,来改变暂挂的方式。
- Hit Count:执行次数。设置后,在程序第X次执行到此断点时暂挂。用于循环中的调试。
- Trigger Point:触发点。设置后,只有在该断点被触发后,其他断点才生效。
- 暂挂方式:挂起线程/挂起VM。前者一般用于多线程时暂挂该线程(单线程也可使用,与挂起VM效果相同)。
- Conditional:条件断点。设置后,仅当满足指定条件时暂挂。可选两种:条件为真/变量值改变。选择“条件为真”时,应在条件栏中填写条件表达式;选择“变量值改变”时,应在条件栏中填写变量表达式。
四、其他技巧
1.在main方法的第一行停止:运行>调试配置,选择“在main中停止”。设置后,程序运行到main函数的第一行时暂挂。
2.表达式:可以对自己的感兴趣的一些变量进行观察,也可以增加一些自己的表达式,也可以查看一行代码的运行结果。窗口>显示视图>表达式,打开表达式视图,然后可以添加表达式、观察动态。要对表达式求值时,选中一行,在要求值的地方右键>检查。
Eclipse中的Debug的更多相关文章
- eclipse中以debug方式启动tomcat报错
在eclipse中debug Tomcat报错,错误如下: FATAL ERROR in native method: JDWP No transports initialized, jvmtiEr ...
- 如何在eclipse中快速debug到想要的参数条件场景下
前言 俗话说,工欲善其事必先利其器. 对于我们经常使用的开发工具多一些了解,这也是对我们自己工作效率的一种提升. 场景 作为开发,我们经常会遇到各种bug,大部分的bug很明确,我们直接可以打断点定位 ...
- eclipse中的debug的用法
最基本的操作是: 1.首先在一个java文件中设断点,然后debug as-->open debug Dialog,然后在对话框中选类后--> Run 当程序走到断点处就会转到debug视 ...
- 怎样在Eclipse中使用debug模式调试程序
最基本的操作是: 1, 首先在一个java文件中设断点,然后运行,当程序走到断点处就会转到debug视图下, 2, F5键与F6键均为单步调试,F5是step into,也就是进入本行代码中执行,F6 ...
- Maven项目在Eclipse中调试 Debug
废话不说一路跟图走. 断点会进入到如下页面点击Edit Source Lookup Path 如下图操作 成功进入Debug模式
- eclipse中的debug按钮组突然找不到了,找回方法
- eclipse中使用debug,显示参数配置
打开Window---->Preferences------>java------>Editor-------->Hovers 效果:
- [转]在Eclipse中Debug 为什么显示source not found
在Eclipse中Debug 为什么显示source not found http://zhidao.baidu.com/link?url=-jna2HB_k2FW72GPbT--5Qg2AWi3Ip ...
- eclipse中的tomcat debug模式启动报超时45s
在eclipse中加入tomcat,开debug模式非常好用,这里就不介绍了 最近eclipse的tomcat开debug模式就是启动不了,增加时间也不能解决,但是非debug模式就可以打开,我觉得是 ...
随机推荐
- 14.如何解决使用webpack打包之后,font-awsome路径不对的问题,终极解决方法
问题描述: 使用webpack打包vue项目,使用font-awsome字体,发现打包之后,font-awsome图标不显示,报错为路径不对 看了下打包的路径,的确路径不对,打包之后font-awso ...
- 3.ubuntu如何安装搜狗输入法
1.http://blog.csdn.net/qq_21792169/article/details/53152700 2.http://jingyan.baidu.com/article/54b6b ...
- bootstrap table 插件多语言切换
在bootstrap中的bootstrap table 插件在多语言切换的审核,只需要如下操作 引入bootstrap-table-locale-all.js文件 $('#Grid').bootstr ...
- java 分页模型的模板
分页sql select top 每页要显示的记录数 * from 表名 where 主键 not in (select top (每页显示的记录数*(当前页-1)) 主键 from 表名 ) sel ...
- nodejs之querystring模块
这里主要记下querystring模块的使用方法. querystring从字面上的意思就是查询字符串,一般是对http请求所带的数据进行解析.querystring模块只提供4个方法,在我看来,这4 ...
- linux执行sh报错:$’\r’: 未找到命令的解决
背景 执行.sh脚本时出现$'\r': 未找到命令, 原因 是因为命令直接从windows 复制过来导致的 解决 yum install dos2unix dos2unix **.sh 进行转换 再次 ...
- [javascript] visible - 待写
摘要 jquery 有个筛选器 visible , 一般用于选择 可见元素 $('p:visible') 就是选择可见的 p 元素. 但发现有时候不可用.!!
- [js] post 方式打开新窗口
一.前因 一般我们是用 window.open(url,name,params); 打开新窗口, url 会携带一些参数, 但存在参数过多,引发url 过长截断,无法打开正确窗口, 所以我们需要使用 ...
- 【PHP】 安装参数
1. 配置参数 './configure' '--prefix=/usr/local/php5.2' '--with-apxs2=/usr/sbin/apxs' '--with-mysql=/usr/ ...
- Python正则表达式指南(转)
原文地址:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python ...