Eclipse调试Java程序的十大技巧 (Top 10 Java Debugging Tips with Eclipse)

在这篇教程中,我们将看到有关使用Eclipse去调试Java应用,调试能够帮助我们找到并修改应用的缺陷。我们将关注运行时问题,而不是编译时错误。有像GDB一样的命令行调试器也一样可用。在这篇教程中,我们关注基于GUI的调试器,通过这篇教程,我们会让我们最喜欢的IDE——Eclipse飞跑起来。虽然我们讲解的是Ecilpse,但是,这些技巧是十分通用,也适合大多数IDE调试,比如NetBeans。 在通读这篇文章之前,我推荐你去看看Eclipse的快捷键,他也十分有用。在写这篇文章时,我的Eclipse版本是Juno。

  • 别把System.out.println当做调试工具

  • 启用所有组件的详细的日志级别

  • 使用日志分析器去读取日志文件

  PS:通读这篇教程,五分钟即可。编写demo逐一实践这篇教程,半个小时足矣。但工作效率将大大提高。记住:“I hear and I forget, I see and I remember, I do and I understand.” 


1、Conditional Breakpoint 条件断点 期望你知道怎么添加断点。否则,只要点击左窗格(在行数的前面)断点就会被创建。在调试模式视角(debug prespective)下,‘断点’试图(Breakpoints view)会列出被创建的断点。我们能够给它添加布尔值(boolean)条件。如此,只有布尔值条件正确断点才会被激活并执行。否则将会跳过。

PS:这个就是有条件的断点。只有满足条件才会被调用。应该比较常用,不用多说。 

 2、Exception Breakpoint 异常断点 在断点视图有一个像J!标签的按钮,我们可以用它添加一个java的异常断点,比如当一个空指针异常抛出时,我们想让程序暂停,并允许调试,这时候我们就可以用这个方法。

3、Watch Point 观察点 这是一个我十分喜欢的功能,当选中的属性被访问或修改时,执行的程序将暂停并允许调试。在Outline视图中选择一个类变量,从右键菜单中选择切换观察点(Toggle Watchpoint.),这样就会创建为这个变量创建一个观察点,并在断点试图中列出。

PS:十分牛X的功能,之前还没用过,惭愧惭愧…… 

PS:另外方法也可以用 

 4、求值(显示、检验、观察) 在被选择的变量与表达式上用 Ctrl+Shift+d 或者Ctrl+Shift+i,就会显示值。在调试中,我们也可以添加一个永久的观察。那么他就会出现在表达式试图(Expressions view )中。

5、Change Variable Values 修改变量的值 在调试过程中,我们可以动态地修改变量的值:选择一个变量,进入变量视图,选择值、类型,按下Enter键。

6、Stop in Main 在主方法中停止 在运行/调试设定中(Run/Debug Settings),编辑配置( Configuration)中我们可以选中一个叫“Stop In Main”的复选框。如果这样,当我们调试程序,程序通过main方法启动时,将会停在mian方法的第一行。

PS:这个在框架启动的时候非常有用,我一直就想找到这样的方法…… 

7、相比去系统属性中添加环境变量,我们通过编辑配置对话框便利地添加变量。

8、Drop to Frame 进入到帧 这是第二个我喜欢的功能,在调试中,我们将控制权返回到调用栈的任意帧,但是变量已经的发生的改变不会重置。选择你想返回并重新调试的栈级,在调试工具栏中点击进入栈帧的按键,Eclipse 十分的酷!

PS:很强大的功能,选择栈帧可以重复调试,唯一的遗憾就是不能重置变量,这也与JVM有关。

  1. 9、Step Filter步过滤器 当我们步入方法(F5)时,我们可能进入外部的包(像 java),可是我们并不需要它,我们可以在首选项中,添加一个过滤器来排除某些包。

10、Step Into, Over and Return 步入、跳过、返回 我把这个放在最后一点,这是学习的第一件事:-)

  • F5 - 步入: 移动到下一步,如果当前行有一个方法调用,那么控制权就会进入该方法的第一行。

  • F6 - 跳过: 移动到下一步,如果当前行有一个方法调用,那么方法调用将在内部执行,只是将控制权移到下一行。

  • F7 - 返回: 如果是在方法内执行,那么控制权将移到当前方法被调用的调用行。

  • F8 - 跳转到下一个断点

PS:的确是基础……

转载于:https://my.oschina.net/markho/blog/498251

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值