欢迎来到天天文库
浏览记录
ID:3913951
大小:781.53 KB
页数:8页
时间:2017-11-25
《eclipse 调试器和 debug 视图》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Eclipse调试器和Debug视图EclipseSDK是针对Java™开发工具(Java™DevelopmentTools,JDT)的项目,它具有一个内置的Java调试器,可以提供所有标准的调试功能,包括分步执行、设置断点和值、检查变量和值、挂起和恢复线程的功能。除此之外,还可以调试远程机器上运行的应用程序。Eclipse平台很健壮,因为其他编程语言可以将该平台提供的调试工具用于各自的语言运行时。正如下文所示,同一个EclipseDebug视图也可以用于C/C++编程语言。Eclipse平台工作台
2、及其工具是围绕JDT组件构建的,该组件为Eclipse提供了下列特性:•项目管理工具•透视图和视图•构造器、编辑器、搜索和构建功能•调试器Eclipse调试器本身是Eclipse内的一个标准插件集。Eclipse还有一个特殊的Debug视图,用于在工作台中管理程序的调试或运行。它可以显示每个调试目标中挂起线程的堆栈框架。程序中的每个线程都显示为树中的一个节点,Debug视图显示了每个运行目标的进程。如果某个线程处于挂起状态,其堆栈框架显示为子元素。在使用Eclipse调试器之前,假定您已经安装了合适
3、的JavaSDK/JRE(我推荐使用JavaVMV1.4)和EclipsePlatformSDKV3.3,而且两者的运行都没问题。一般来说,先用Eclipse示例测试一下调试选项比较好。如果想开发和调试C/C++项目,还需要获得并安装C/C++开发工具(C/C++DevelopmentTools,CDT)。关于JavaSDK/JRE、Eclipse平台和示例以及CDT,请参阅参考资源。图1显示了Debug透视图的一般视图。图1.EclipseDebug透视图的一般视图调试Java语言程序在可以调试项
4、目前,需要干净地编译和运行代码。首先,需要为应用程序创建一个运行配置,确保应用程序可以正确启动。然后,需要通过Run>Debug菜单以类似的方式设置调试配置。还需要选择一个类,将它作为调试的主Java类来使用(请参见图2)。您可以按照自己的意愿为单个项目设置多个调试配置。当调试器启动时(从Run>Debug),会在一个新的窗口中打开,这时就可以开始调试了。图2.在调试配置中设置项目的主Java类接下来,将讨论Eclipse中的一些常用调试实践。设置断点在启动应用程序进行调试时,Eclipse会自动切
5、换到Debug透视图。毫无疑问,最常见的调试步骤是设置断点,这样可以检查条件语句或循环内的变量和值。要在Java透视图的PackageExplorer视图中设置断点,双击选择的源代码文件,在一个编辑器中打开它。遍历代码,将鼠标放在可疑代码一行的标记栏(在编辑器区域的左侧)上,双击即可设置断点。图3.编辑器左侧看到的两个断点现在,从Run>Debug菜单启动调试会话。最好不要将多条语句放在一行上,因为会无法单步执行,也不能为同一行上的多条语句设置行断点。图4.视图中左侧空白处的箭头指示当前正在执行的行
6、还有一个方便的断点视图来管理所有的断点。图5.断点视图条件断点一旦了解到错误发生的位置,您可能想要知道在程序崩溃之前,程序在做什么。一种方法就是单步执行程序的每行语句。一次执行一行,直到运行到可疑的那行代码。有时,最好只运行一段代码,在可疑代码处停止运行,在这个位置检查数据。还可以声明条件断点,它在表达式值发生变化时触发(请参见图6)。除此之外,在输入条件表达式时,也可以使用代码帮助。图6.设置条件断点触发器计算表达式的值为了在Debug透视图的编辑器中计算表达式的值,选择设置了断点的那行代码,在上
7、下文菜单中,通过Ctrl+Shift+I或右键单击您感兴趣的变量(参见图7)选择Inspect选项。在当前堆栈框架的上下文中会计算表达式的值,在Display窗口的Expressions视图中会显示结果。图7.通过Inspect选项计算表达式的值剪切活动代码Display视图允许您以剪切类型的方式处理活动代码(参见图8)。要处理一个变量,在Display视图中输入变量名即可,视图会提示您一个熟悉的内容助手。图8.Display视图当调试器停止在一个断点处时,您可以从Debug视图工具栏(参见图9)中
8、选择StepOver选项,继续调试器会话。该操作会越过高亮显示的那行代码,继续执行同一方法中的下一行代码(或者继续执行调用当前方法的那个方法的下一行代码)。执行上一步后发生改变的变量会用某种颜色高亮显示(默认是黄色)。颜色可以在调试首选项页面中改变。图9.改变颜色的变量要在Debug视图中挂起执行线程,选择一个运行线程,单击Debug视图工具栏中的Suspend。该线程的当前调用堆栈就会显示出来,当前执行的代码行就会在Debug透视图中的编辑器中高亮显示。挂起一个线程
此文档下载收益归作者所有