问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

eclipse debug如何设置?

发布网友 发布时间:2022-04-30 14:19

我来回答

2个回答

热心网友 时间:2022-06-23 01:24

调试是程序员无法回避的工作。调试方法有许多种,但归根结底,就是找到引发错误的代码。举例来说,在 Linux 应用程序中,分段故障被认为是最常见的错误之一。当程序尝试访问未分配给它的内存并因为分段违例而终止时,将产生这种错误。
要修正这种错误,您需要找到引发该行为的那行代码。一旦找到有问题的代码行,这对于知道引发错误的上下文及其相关的值、变量和方法也是有所帮助的。使用调试器将使查找这些信息变得相当简单。
Eclipse 调试器及 Debug 视图
Eclipse 平台的特色在于内置了 Java 调试器,该调试器提供所有标准调试功能,包括进行单步执行、设置断点和值、检查变量和值以及暂挂和恢复线程的能力。此外,您还可以调试在远程机器上运行的应用程序。Eclipse 平台主要是一个 Java 开发环境,但其体系结构同时也向其它编程语言开放。如以下您将看到的,同一个 Eclipse 的 Debug 视图也可用于 C 和 C++ 编程语言。
Eclipse 平台工作台(Eclipse Platform Workbench)及其工具是基于 Java 开发工具(JDT)组件所构建的。这些组件向 Eclipse 提供以下功能:
1、项目管理工具
2、透视图和视图
3、构建器、编辑器、搜索和构建功能4、调试器Eclipse 调试器本身是作为 Eclipse 二进制文件中包含的标准插件而存在的。Eclipse 还有一个特别的 Debug 视图,允许您在工作台中管理程序的调试和运行。它为调试中的每个目标显示其暂挂线程的堆栈帧。程序中的各个线程以作为树的节点出现,而 Debug 视图则显示运行中的各目标的进程。如果暂挂一个线程,则其堆栈帧显示为子元素。
在您开始使用 Eclipse 调试器之前,假定您已经安装了适当的 Java SDK/JRE(我推荐您使用 Java VM 1.4)和 Eclipse 平台 SDK 2.0/2.1,且两者都工作正常。
一般来说,先使用 Eclipse 样本来测试一下调试选项是一个好主意。如果您要开发和调试 C/C++ 项目,您还需要得到并安装 C/C++ 开发工具(C/C++ Development Tool,CDT)。有关 Java SDK/JRE、Eclipse 平台和样本以及 CDT 的链接,图1显示了 Debug 用户界面的常规视图。
图 1. Eclipse Debug 视图用户界面的常规视图调试 Java在您能调试您的项目之前,需要先完整地编译和运行代码。您首先需要为您的应用程序创建运行配置并确认其正常启动。之后,您需要使用 Run Debug...菜单,以同样的方式设置调试配置。您还需要选择作为主 Java 类的由调试器使用的类(也请参阅 图 2)。对一个项目,您希望有几种调试配置就可以有几种。当调试器启动后(通过 Run Debug...),会在一个新窗口打开它,您可以准备开始调试。
图 2. 在调试配置中设置项目的主 Java 类
以下是最常见的 Eclipse 调试操作的示例指示信息:设置断点当您启动应用程序以进行调试时,Eclipse 自动切换到 Debug 透视图。无庸置疑,最常见的调试过程就是设置断点,以允许检查在条件语句和循环中的变量和值。要在 Java 透视图的 Package Explorer 视图中设置断点,双击所选的源代码文件,在编辑器中打开它。遍历全部代码,将光标放置在含有可疑代码的那一行的标记栏上(在编辑器区域的左侧)。双击以设置断点(也请参阅 图 3)。
图 3. 在编辑器左侧边缘可看到两个断点标记
现在通过 Run Debug...菜单启动调试会话。有一点很重要,不要把数条语句放在同一行,因为您不能在同一行的多条语句上单步跳过或设置行断点(也请参阅 图 4)。
图 4. 视图通过左侧边缘的箭头指出当前正在执行的行条件断点一旦您找到出错的地方,您会想要了解在崩溃前程序在干些什么。完成该工作的一种方法是单步执行程序中的每条语句,一次一句,直到到达出问题的地方。有时候更好的方法是仅运行某段代码并在出问题的地方终止其执行,这样就可以检查该位置上的数据。要实现这一点,可能要声明每当表达式的值更改时就被触发的条件断点(请参阅 图 5)。此外,在输入条件表达式时还可以使用代码辅助。
图 5. 设置条件断点触发器
对表达式求值
要在 Debug 透视图的编辑器中求表达式的值,选中设置有断点的一整行,并在上下文菜单中选择 Inspect 选项(请参阅 图 6)。表达式是在当前堆栈帧的上下文中求值的,其结果显示在 Display 窗口的 Expressions 视图中。
图 6. 用 Inspect 选项求表达式的值查看变量Variables 视图(在 Display 窗口中)显示了选中的堆栈帧中的变量值(请参阅 图 7)。要查看所请求的变量,只需展开 Variables 视图中的树直到您看到所请求的元素为止。您也可以在 Debug 视图中单步执行代码的同时,在 Variables 视图中查看变量。

热心网友 时间:2022-06-23 01:25

打断点,网上搜教程,多练多写
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
黑色芳纶哪家的好一些? 苏子叶我们中国叫什么苏子叶在中国叫什么 福州小车过户多少钱啊 福州车辆过户要多少钱 民生山西怎么查不到医疗保险信息 app查询养老金医疗保险方法介绍_百度... 太原医保查询平台(附入口二维码) 鉴定伤残等级去哪个部门 2024年中国铝业集团高管团队名单 2024中铝集团董事会成员一览 右枕位胎儿图怎么睡 一鸣楼宇对讲,刷卡开不了门,但分机能开,对讲能用,怎样维修? 在eclipse中怎样用debug调式错误 eclipse debug 怎样显示参数的值 在Eclipse中如何用Debug测试程序 如何调出DEBUG窗口 eclipse 如何使用eclipse debug模式 如何用eclipse debug JAVA中的Debug如何使用 怎样在Eclipse中使用debug模式调试程序 2016年食品经营许可证怎么办理流程 eclipse的debug要怎么用? 消防的电话分机都需要什么线? 消防分机电话线不闪灯但可以通话,咋回事? 消防电话线是怎么接线?消防电话线上表的是:一对 SC15 wc 后面两个知道 但是一对是啥意思 消防报警电话分机能否只与烟感连接?烟感连的是报警总线WDZN-RYSP 请问消防电话分机可以共用一根线吗? 消防电电话分机能否与手报接一个电话线? 电饭锅锅底糊了,怎么快速清理? 尼特消防电话主机怎么接 重阳节有什么讲究啊?? 重阳节不能在娘家过吗 如何在Eclipse中Debug调试Java jdk源代码 微信满多少人看不到朋友圈是制动的吗 微信好友2100人,朋友圈多少人能看到? 微信超过多少人朋友圈看不到 微信好友达到上限了,别人会不会看不到我的朋友圈 微信超过3000人,是不是有部分人看不到我朋友圈? 怎么用微信给公交卡充值? 企业如何剥离债权债务 债务剥离的危害? 上市公司债务剥离是怎么回事?剥离就是不用还了吗? 公司改制债权债务剥离,增值税留抵额怎么处理? 对企业资产剥离改制的债权债务应如何处理? 单位的债权债务与该企业资产以其整体剥离是什么意思? 企业破产重整,对债权人债务进行剥离处理,是否需要经过债权人同意 资质的剥离和整转有什么区别? 公司改制债权债务怎么处理 兵者诡道开始就退出 公司股权转让法人变更,协议规定原债权债务由原股东原法人承担,该如何账务处理? 把自己公司资产打包让委托其他公司上市有什么风险 选择建筑资质剥离有什么利弊?