调试程序

在本节中,将调试 Java 程序。

  1. 在 Java 透视图的“包资源管理器”视图中,双击 junit.samples.VectorTest.java 以在编辑器中打开它。
  2. 将光标置于 setUp() 方法中下面这一行的沿编辑器区域左边缘的垂直标尺上:

    fFull.addElement (new Integer(1));

    并双击标尺以设置断点。

    显示添加的断点的 VectorTest.java 编辑器

    断点图标指示了断点的状态。纯蓝色断点图标指示已设置但尚未安装断点。   

    注意:在 Java VM 装入类之后,将安装断点,并且将在断点图标上显示复选标记覆盖层。

  3. 在“包资源管理器”视图中,选择 junit.samples 包并选择“调试方式”,然后选择“Java 应用程序”。当从包中运行程序时,将提示您从定义 main 方法的包中的所有类中选择类型。   
  4. 选择对话框中的 VectorTest 项,然后单击确定

    类型选择对话框

  5. 程序将运行到遇到断点为止。当遇到断点时,执行将暂挂,并且将询问您是否要打开“调试”透视图。单击。注意,进程在“调试”视图中仍然是活动的(未终止)。其它线程可能仍在运行。

    调试透视图

    注意:因为已经在 Java VM 中装入了类 VectorTest,所以断点现在具有复选标记覆盖层。
  6. 在“调试”透视图的编辑器中,从设置了断点的行中选择 new Vector(),并从它的上下文菜单中选择检查

    具有选择的断点行并显示上下文菜单的 VectorTest.java 编辑器

  7. 表达式是在当前堆栈帧的上下文中求值的,并且会出现一个显示结果的弹出窗口。您可以通过按弹出窗口中显示的键绑定来将结果发送至“表达式”视图。
  8. 将在此视图中显示调试程序时对其进行求值的表达式。要在使用表达式后将其删除,请选择该表达式并从它的上下文菜单中选择除去
  9. “变量”视图(位于沿着“表达式”视图的选项卡上)显示所选堆栈帧中的变量的值。展开“变量”视图中的 this.fFull 树,直到可以看见 elementCount 为止。
  10. 在“调试”视图中单步执行 VectorTest 时,“变量”视图中的变量(例如,elementCount)将更改。要单步执行代码,请单击单步跳过单步跳过)按钮。将在同一方法中的下一行继续执行(或者,如果已位于方法的末尾,则将在调用当前方法的方法中继续执行)。  

    变量视图

  11. 尝试其它一些单步执行按钮(单步跳入 单步跳入 和单步返回 单步返回以单步执行代码。注意不同单步执行技术的差别。
  12. 可以通过允许程序运行至完成或通过终止它来结束调试会话。

相关概念
断点
远程调试
本地调试

相关任务
添加断点
继续执行暂挂的线程
运行和调试
暂挂线程

相关参考
调试首选项
调试视图
运行和调试操作
断点视图
控制台视图
显示视图
表达式视图
变量视图