【转】Eclipse 单步调试

进入debug模式,设置断点,然后运行程序到断点

[1]快捷键(F8)直接执行程序。

[2]快捷键(F5)单步执行程序,遇到方法时进入。

[3]快捷键(F6)单步执行程序,遇到方法时跳过。

[4]快捷键(F7)单步执行程序,从当前方法跳出。

  若要改变变量的值,可以右击变量,在弹出的菜单中选择[change variablevalue],弹出修改画面。改变其值后,按下ok键即可。这时,变量的值就改为修改后的值了。 若要检查代码段是否正确,可以选择一句或一段代码,右键单击在弹出的菜单中选择Inspect项,这时,代码的执行结果就显示在Expressions窗口中。

  在调试时出现source notfind的提示信息,只要将window->preferences->tomcat->sourcepath中相关的工程选中即可.

1、在程序里面放置一个断点,也就是双击需要放置断点的程序左边的栏目上。

2、点击那个虫子样子的按钮,或者右键单击该程序,选择debug as -> javaapplication

3、按F5就是一层层深入的debug相当于剥葱样,按F6就是一步步debug,不理会深层次运作,按F7就是不管当前位置有多深,都跳转到断点设置的那一层代码,按F8就是停止debug,运行完程序 另,在debug时,会有很多有用信息显示在debug框里面,需要自己实践,鼠标移到变量上时会有当前变量的属性值

Eclipse断点调试 Eclipse 的断点调试 在debug as application时Debug框上会有一些按扭,例如: suspend,step into ,step over,step return,drop to frame,use stepfilters/step debug 他们是干什么用的,怎样使用?

本地调试 Java调试器具有客户机/服务器设计,因此,它可以用来调试以本地方式(在调试器所在的工作站上)或以远程方式(在网络中的另一台计算机上)运行的程序。 本地调试是最简单并且最常用的一种调试。完成编辑和构建 Java 程序后,可以使用工作台上的运行 >调试...菜单项来在工作站上启动程序。以此方式启动程序将在调试器客户机与正在启动的 Java程序之间建立连接。然后,可以使用断点、单步执行或表达式求值来调试程序。

准备调试

可通过遵循下列准则使程序更容易调试: 尽可能不要将多个语句放在同一行上,因为某些调试器功能部件是以行为基础来运行的。例如,不能在同一行上的多个语句上单步跳过或设置行断点。 如果您有源代码,则将源代码连接至 JAR 文件。

以调试方式启动Java 程序

以调试方式启动程序允许您使用调试器来暂挂和继续执行程序、检查变量和对表达式进行求值。 要以调试方式启动 Java 程序, 在“包资源管理器”中,选择想要启动的 Java 编译单元或类文件。 选择运行 > 调试方式 > Java 应用程序。 或者选择调试工具栏按钮上的下拉菜单中的调试方式 > Java 应用程序。 现在就启动了程序,并且已启动的进程显示在“调试”视图中。 如果想要程序在 main 方法中停止以便您可以单步遍历它的整个执行,则创建 Java 应用程序启动配置,并选择主选项卡上的在 main中停止复选框。 还可以通过选择项目而不是编译单元或类文件来调试 Java 程序。将提示您从定义 main方法的那些类中选择一个类。(如果在项目中只找到了一个具有 main 方法的类,则会象选择了该类一样启动该类。)

暂挂线程

要暂挂正在执行的线程: 在“调试”视图中选择该线程。 单击“调试”视图工具栏中的暂挂按钮。该线程就会暂挂它的执行。将显示该线程的当前调用堆栈,并且在“调试”透视图中的编辑器中突出显示执行的当前行。 线程暂挂时,会自动选择该线程的顶部堆栈帧。“变量”视图显示堆栈帧的变量以及它们的值。可通过展开复杂变量以显示它们的成员的值来进一步检查复杂变量。 当暂挂了线程并且将光标悬浮在 Java 编辑器中的一个变量上时,就会显示该变量的值。

继续执行暂挂的线程

要继续执行暂挂的线程: 在“调试”视图中选择该线程或者它的堆栈帧。 单击“调试”视图工具栏中的继续按钮(或者按 F8键)。线程将继续执行,但是将不再对该线程显示堆栈帧。这就清除了“变量”视图。 单步遍历 Java 程序的执行 暂挂线程时,可以使用单步控制来逐行单步完成程序的执行。如果在执行单步操作时遇到了断点,则在该断点处将暂挂执行,并且该单步操作将结束。 单步跳过 在“调试”视图中选择堆栈帧。该堆栈帧中的执行的当前行在“调试”透视图的编辑器中突出显示。 单击“调试”视图工具栏中的单步跳过按钮,或者按 F6 键。执行当前所选的行,但会在下一个可执行行上暂挂。 单步跳入 在“调试”视图中选择堆栈帧。所选帧中的执行的当前行在“调试”透视图的编辑器中突出显示。 单击“调试”视图工具栏中的单步跳入按钮,或者按 F5键。调用在要执行的当前所选行上的下一个表达式,而执行会在调用的方法中的下一个可执行行上暂挂。 单步跳入选择 在“调试”视图中选择堆栈帧。所选帧中的执行的当前行在“调试”透视图的编辑器中突出显示。 在 Java 编辑器中,在执行的当前行中,将光标放置在想要单步跳入的方法的名称上。 单击“运行”菜单或 Java 编辑器上下文菜单中的单步跳入选择操作,或者按 Ctrl-F5键。将继续执行,直到调用了所选择的方法为止。 使用过滤器单步执行 切换“调试”视图工具栏中的使用单步执行过滤器按钮,或者使用Shift+F5。当将此操作切换为打开时,每个单步执行操作(单步跳过、单步跳入和单步返回)都将应用在用户首选项中定义的那组单步执行过滤器(请参阅窗口> 首选项 > Java > 调试> 单步执行过滤)。当调用单步执行操作时,在到达未过滤的位置或遇到断点之前,单步执行将继续。 运行至返回 在“调试”视图中选择堆栈帧。所选帧中的执行的当前行在“调试”透视图的编辑器中突出显示。 单击“调试”视图工具栏中的运行至返回按钮,或者按 F7键。将继续执行,直到执行当前方法中的下一个返回语句,且执行会在下一个可执行行上暂挂。 运行至行 暂挂线程时,可以继续执行,直到执行指定的行为止。这是在某行暂挂执行而不用设置断点的简便方法。 将光标放在想要程序运行的行上。 从弹出菜单中选择运行至行,或者使用 Ctrl+R。程序将继续执行,而刚好在要执行的指定行之前暂挂。 有可能某行从来不会遇到,并且程序将不会暂挂。 断点和异常可导致线程在到达指定行之前被暂挂。 检查值 当选择了堆栈帧时,可以在“变量”视图的该堆栈帧中看到可视变量。 “变量”视图显示基本类型的值。可通过展开复杂变量以显示它们的成员来检查复杂变量。

对表达式求值

当 VM 暂挂线程(由于遇到断点或单步执行代码)时,可以在堆栈帧的上下文中对表达式进行求值。 选择要在其中执行求值的堆栈帧。对于变量和表达式视图的详细信息窗格,求值上下文将是所选择的变量。如果未选择任何变量,则所选择的堆栈帧将为上下文。 可以在下列区域中输入表达式和对表达式求值: 显示视图 表达式视图的详细信息窗格 变量视图的详细信息窗格 Java 编辑器(当它正在显示源并且不是只读的时候) 选择要求值的表达式,并从上下文弹出菜单中选择显示、检查或执行。显示或检查求值的结果将显示在一个弹出窗口中。注意,执行不显示结果-只执行表达式。 可以通过单击弹出窗口的外部或按 Esc来离开结果弹出窗口。通过按弹出窗口底部显示的键序列,可以将结果移至“显示”视图(如果选择了显示)或“表达式”视图(如果选择了检查)。例如,要将检查求值的结果移至“表达式”视图,按CTRL-Shift-I。注意,当从“显示”视图使用显示操作时,结果将会写入“显示”视图而不是弹出窗口中 注意:在已经手工暂挂的线程中不能执行求值。

远程调试 Java 调试器的客户机/服务器设计允许您从网络中的计算机启动 Java 程序并从运行平台的工作站调试该程序。当为不能主管开发平台的设备开发程序时,这一点尤其有用。当在专用机器(如 web 服务器)上调试程序时,这一点也很有用。 注意:要使用远程调试,必须使用支持此功能的 Java VM。 要以远程方式调试程序,必须能够在远程机器上以调试方式启动程序,以便它将等待来自调试器的连接。用于启动程序和连接调试器的特定技术是特定于 VM 的。基本步骤如下: 确保正在以可用的调试信息构建 Java 程序。(可以从窗口 > 首选项 > Java > 编译器控制这些属性)。 构建 Java 程序后,将其安装到目标计算机。这涉及将 .CLASS 文件或 .JAR 文件复制到远程计算机上的适当的位置。 在远程计算机上调用 Java 程序,并使用适当的 VM 自变量来指定调试方式和调试器的通信端口。 使用远程启动配置来启动调试器并指定远程计算机的地址和端口。 应该从 VM 供应商那里获取用来设置用于进行远程调试的启动配置的更特定指示信息。

使用远程 Java 应用程序启动配置 远程 Java 应用程序启动配置应在调试正在远程 VM 上运行的应用程序时使用。因为应用程序是在远程系统上启动的,所以启动配置不会指定有关 JRE、程序自变量或 VM 自变量的普通信息。然而,提供了有关连接至应用程序的信息。 要创建远程 Java 应用程序启动配置,执行下列操作: 从工作台菜单栏中选择运行 > 调试...(或者从调试工具栏按钮的下拉菜单中选择调试...)来显示“启动配置”对话框。 在左边的配置类型列表中选择远程 Java 应用程序。 单击新建按钮。于是就创建了新的远程启动配置,并显示三个选项卡:连接、源和公共。 在连接选项卡的项目字段中,输入或进行浏览来选择用作启动的参考的项目(用于源查找)。不需要指定项目。 在连接选项卡的主机字段中,输入 Java 程序正在其中运行的主机的 IP 地址或域名。 如果程序与工作台在同一台机器上运行,则输入 localhost。 在连接选项卡的端口字段中,输入远程 VM 正在其中接受连接的端口。通常,启动远程 VM 时就要指定此端口。 允许终止远程 VM 标志是一个切换开关,它确定是否在调试器中启用终止命令。如果想要能够终止正连接至的 VM,则选择此选项。 单击调试。启动将尝试连接至位于指定地址和端口的 VM,而结果显示在“调试”视图中。如果启动程序无法连接至位于指定地址的 VM,则会出现错误消息。 指定应当从 VM 供应商处获取的用于设置远程 VM 的指示信息。

与 VM 断开连接 要与使用“远程 Java 应用程序”启动配置所连接至的 VM 断开连接: 在“调试”视图中,选择启动。 单击视图的工具栏中的断开连接按钮。与 VM 的通信终止,而远程 VM 中的所有线程仍继续进行。尽管远程 VM 继续执行,但调试会话现在终止了。

时间: 2024-10-28 10:52:26

【转】Eclipse 单步调试的相关文章

Eclipse 单步调试快捷键

调试快捷键 (F5)单步执行程序,遇到方法时进入:(F6)单步执行程序,遇到方法时跳过:(F7)单步执行程序,从当前方法跳出:(F8)直接执行程序.遇到断点时暂停: 按F5就是一层层深入的debug相当于剥葱样,会进入每个方法内部:按F6就是在当前函数一步步debug,不理会深层次运作:按F7就是如果当前进入了某个方法内部,都跳转到该方法的结尾代码处:按F8就是如果后面还有断点,则运行到下一断点处,否则运行完程序:

eclipse 单步调试

1.设置断点在程序里面放置一个断点,也就是双击需要放置断点的程序左边的栏目上.断点是程序执行到该处自动停止. 2.调试(1)点击"打开透视图"按钮,选择调试透视图,则打开调试透视图界面,然后先设置断点,按调试按钮则可以调试程序.(2)或者直接点击调试按钮,那个虫子样子的按钮,然后就会进入调试透视图的界面.前提你需要是要在程序中设置好断点.(3)或者右键单击该程序,选择debug as(调试方式) -> java application(Java应用程序),则可以调试程序了.前提你

apktool + eclipse 动态调试APK

用了会AndBug,尽管挺强大的可是作为习惯了OD.EDB作为动态调试工具的人,自然有些不习惯,于是乎寻求新的动态调试解决方式.但大多数都是NetBeans + apktool.想着还得多下一个IDE就各种烦躁,还是去寻求Eclipse的组合吧. http://code.google.com/p/android-apktool/wiki/SmaliDebugging 找到apktool的官网,看到有能够实现动态调试. 能够在反编译和回编的时候通过设置參数给目标APK中的manifest文件里增加

Eclipse里面调试java总结

? 正所谓"工欲善其事必先利其器",会用Eclipse去调试可以帮助识别和解决应用程序缺陷,同时也可以帮助我们去阅读和理解一些源码是有极大的帮助的.可以极大的提高我们的工作效率.?  1.基础知识,熟悉Debug视图 认识debug视图,红色部分框为线程堆栈视图,黄色部分框为表达式.断点.变量视图,蓝色部分为代码视图.  线程堆栈视图 分别介绍一下这几个按钮的含义: 1.表示当前实现继续运行直到下一个断点,快捷键为F8. 2.表示打断整个进程 3.表示进入当前方法,快捷键为F5. 4.

Android动态方式破解apk前奏篇(Eclipse动态调试smail源码)

一.前言 今天我们开始apk破解的另外一种方式:动态代码调试破解,之前其实已经在一篇文章中说到如何破解apk了: Android中使用静态方式破解Apk  主要采用的是静态方式,步骤也很简单,首先使用apktool来反编译apk,得到smail源码,然后分析smail代码,采用代码注入技术来跟踪代码,然后找到关键方法进行修改,进而破解,同时还可以使用一些开源的hook框架,比如:Xposed和Cydia Substrate,来进行关键方法的hook.所以这里我们可以看到我们破解的第一步是使用ap

Ecplise + Xdebug 一波三折终于能单步调试了

http://my.oschina.net/012345678/blog/152889 Ecplise + Xdebug 一波三折终于能单步调试了 发表于2年前(2013-08-15 15:50)   阅读(1260) | 评论(0) 14人收藏此文章, 我要收藏 赞0 寻找 会’偷懒’的开发者线下公开课,报名即享受免费体验云主机 php Version 5.2.13 apache  2.2 Xdebug  2.1.2 VC6 32bit eclipsePHP 官网的 以上全部下载齐全,保证版本

android NDK开发在本地C/C++源码中设置断点单步调试具体教程

近期在学android NDK开发,折腾了一天,最终可以成功在ADT中设置断点单步调试本地C/C++源码了.网上关于这方面的资料太少了,并且大都不全,并且调试过程中会出现各种各样的问题,真是非常磨人.程序员就得有耐心. 把自己的调试过程记录下来.希望对须要的朋友有帮助. 在看本文之前,请先确保你已经成功编译了一个android NDKproject,而且可以在模拟器或者真机上执行.至于怎么编译NDKproject,包含配置.生成.so文件等等.可以參考我的前一篇博客:http://blog.cs

Eclipse 远程调试 WebSphere Application Server (WAS)

我们用 Eclipse 开发 Web 项目时,多会用某个插件(如 MyEclipse) 来对 Tomcat 中的应用进行单步调试.而要调试 WAS 下的应用,MyEclipse 也是可以的,但在 MyEclipse 中启动 WAS 比较慢,且需要在本地安装一个 WAS.再有便捷点的方法是用 WSAD (Websphere Studio Application Developer) 或它的升级版 RAD (Rational Application Developer),它们内置了对 WAS 很好的

eclipse快捷键调试总结【转】

http://www.cnblogs.com/yxnchinahlj/archive/2012/02/22/2363542.html (1)Ctrl+M --切换窗口的大小(2)Ctrl+Q --跳到最后一次的编辑处(3)F2      ---重命名类名 工程名 --当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description.          F3        --跳到声明或定义的地方.          F5