- 启动调试会话
- 添加和删除断点
- 设置条件断点
- 在“断点”视图中管理断点
- 在“调试”视图中管理调试会话
- 使用“控制台”视图
- 在“变量”视图中管理变量
- 更改变量的值
- 查找变量
- “变量”视图中表示变量的图标
- 使用“表达式”视图
- 表达式示例
- 表达式求值的局限性
- 使用观察点
- 使用“运行至行”
调试应用程序的过程与运行应用程序的过程类似。但是,进行调试时,可以控制应用程序何时停止于代码中的特定点、是否要监视重要变量,并且可以测试对代码进行的修正。运行和调试都使用配置来控制应用程序的启动方式。调试应用程序时,将运行应用程序文件的调试版本。
有关 Flash 调试透视图中可用的调试工具的概述,请参阅 Flash 调试透视图。
在某些情况下,系统会提示您查看 Eclipse 日志文件。有关更多信息,请参阅日志文件中的 Eclipse 环境错误。
启动调试会话
要开始调试会话,请在 Flash 调试透视图中运行应用程序启动配置。
调试应用程序
在 Flex 包资源管理器中,选择要调试的项目。
在主工作台工具栏中选择“调试”按钮。
注: “调试”按钮包含两个元素:主操作按钮和一个下拉列表,后者显示项目中可以运行和调试的应用程序文件。如果单击主操作按钮,将调试项目的默认应用程序文件。也可以单击下拉列表,并选择项目中的任何应用程序文件来进行调试。还可以访问启动配置对话框,并通过选择“调试”命令创建或编辑启动配置。
如果项目尚未构建,Adobe® Flash® Builder™ 将构建并在调试模式下运行项目。
应用程序将出现在默认 Web 浏览器或独立 Flash Player 中,随后您可以使用 Flash Builder 调试器与它交互。
到达断点后,将在工作台中激活 Flash 调试透视图。
在插件配置中启动调试会话
在 Flash Builder 的插件配置中,“调试”命令的工作方式稍有不同。在此配置中,它不运行选定的项目,而是调试最近一次启动的配置。您也可以从最近启动的配置列表中进行选择。
添加和删除断点
可通过断点暂停应用程序的执行,以便检查代码并使用 Flash Builder 调试工具尝试修正错误。调试应用程序时,可在代码编辑器中添加断点,然后在“断点”视图中管理断点。
可以在可执行代码行中添加断点。调试器仅在包含以下内容的代码行中设置的断点处停止:
包含 ActionScript 事件处理函数的 MXML 标签,如 <mx:Button click="dofunction()" ...>
ActionScript 行,如包含在 <mx:Script> 标签或 ActionScript 文件中的 ActionScript 行
ActionScript 文件中的任何可执行代码行
可在编写代码时设置断点,也可在调试时设置断点。
在代码编辑器中设置断点
打开一个包含 ActionScript 代码的项目文件。
找到要设置断点的代码行,然后双击标记栏以添加断点。
标记栏靠近代码编辑器的左边缘。
系统会将断点标记添加到标记栏和 Flash 调试透视图的“断点”视图中的断点列表中。
当调试器遇到断点时,将暂停应用程序,显示 Flash 调试透视图,并用断点标记代码行。在代码编辑器中将加亮相应代码行。您随后可使用调试命令与代码交互。(请参阅在“调试”视图中管理调试会话。)
在代码编辑器中删除断点
在标记栏中,双击现有断点。
断点即从标记栏和 Flash 调试透视图的“断点”视图中删除。
可以在“断点”视图中管理断点。可以删除列表中的一个或全部断点,或禁用断点以后再重新启用(请参阅在“断点”视图中管理断点)。
设置条件断点
可以为断点指定条件,以在满足特定条件时停止执行调试器。设置条件断点时,指定一个要在调试会话期间求值的 ActionScript 表达式。配置条件断点,使调试器在下列任一条件下终止执行:
表达式计算结果为 true。
表达式的值发生更改。
达到指定的命中计数。
设置条件断点
从断点的上下文菜单中,选择“断点属性”。
在“断点属性”对话框中,指定下列任一选项:
启用
在启用或禁用断点间切换。
命中计数
选择“命中计数”可启用断点计数器。为“命中计数”指定一个数字。
如果同时指定了“命中计数”和“启用条件”,则“命中计数”是满足指定条件(计算结果为 true 或条件的值发生更改)的次数。
如果仅指定“命中计数”,则“命中计数”是到达断点的次数。
启用条件
选择“启用条件”并输入要求值的 ActionScript 表达式。有关求值运算支持的表达式类型的信息,请参阅表达式示例。
注: Flash Builder 将检查表达式的语法并将语法错误通知给您。如果表达式中包含赋值运算符,Flash Builder 将显示警告。
暂停发生条件:
指定终止执行的条件:条件表达式求值结果为 true,或表达式的值发生更改时。
在“断点”视图中管理断点
在调试会话期间,可在“断点”视图中管理断点。可以删除、禁用、启用或跳过断点。
“断点”视图工具栏中提供了下列命令(从左到右显示):
按钮/命令
说明
删除选择的断点
删除所选断点。
删除所有断点
删除所有断点。
显示所选目标支持的断点
显示适用于所选调试目标的断点。
转至文件以获取断点
在代码编辑器中打开包含断点的文件(如果尚未打开)并加亮设置了断点的代码行。也可以直接双击断点,以在代码编辑器中显示此断点。
跳过所有断点
跳过所有断点。
全部展开
展开全部断点。
全部折叠
折叠全部断点。
与“调试”视图链接
链接到“调试”视图。
在“断点”视图中删除断点
可在“断点”视图中通过断点工具栏删除一个、几个或所有断点。
在断点列表中选择一个或多个断点,然后单击“删除选择的断点”。
也可以通过一次操作删除“断点”视图中的所有断点。
从“断点”视图中删除所有断点
在“断点”视图中,单击“删除所有断点”。
在“调试”视图中管理调试会话
“调试”视图是 Flash 调试透视图的控制中心。使用它可以控制应用程序的执行,暂停、继续执行或终止应用程序,或者单步跳入或单步跳过代码。
“调试”视图提供下列调试命令,这些命令位于“调试”视图的工具栏中(从左到右显示):
按钮/命令
说明
删除所有终止的启动
清除所有已终止的调试会话。
继续
继续执行已暂停的应用程序。
暂停
暂停应用程序以便检查代码、单步跳入代码等。
终止
终止调试会话。
断开连接
在进行远程调试时断开调试器的连接。
单步跳入
进入调用的函数并在该函数的第一行停止。
单步跳过
执行函数的当前行,然后在该函数的下一行停止。
跳出
继续执行,直到当前函数已返回到其调用者。
拖放至帧
Flash Builder 中不支持此命令。
使用单步执行过滤器
Flash Builder 中不支持此命令。
使用“控制台”视图
“控制台”视图显示 ActionScript 代码中放置的跟踪语句的输出以及来自调试器自身的反馈(状态、警告、错误等)。
“控制台”视图提供下列命令,这些命令位于“控制台”视图的工具栏中(从左到右显示):
按钮/命令
说明
终止
终止调试会话。
删除启动
清除所有已启动的调试会话。
删除所有终止的启动
清除所有已终止的调试会话。
清除控制台
清除“控制台”视图中的所有内容。
滚动锁定
防止“控制台”视图滚动。
标准输出发生更改时显示控制台
写入到标准输出中时显示控制台
标准错误发生更改时显示控制台
写入到标准错误中时显示控制台
锁定控制台
防止在选择其它进程时控制台刷新其内容。
显示选择的控制台
显示选择的控制台
打开控制台
打开新控制台并显示弹出菜单,以选择其它控制台视图。
在“变量”视图中管理变量
“变量”视图显示当前所选堆栈帧在“调试”视图中定义的变量。简单变量(名称和值)显示在同一行上。随变量一起显示的图标提供有关该变量类型的可视提示。
复杂变量可以展开以显示其成员。可使用“变量”视图观察变量(通过将变量添加到“表达式”视图),也可以在调试会话期间使用“变量”视图修改变量值。还可以在“变量”视图中设置观察点,如使用观察点中所述。
所有超类成员都组合在一个单独的树节点中;默认情况下仅显示当前类的成员。这将有助于减少“变量”视图中一次显示过多变量的情况。
“变量”视图提供下列操作命令,这些命令位于“变量”视图工具栏中(从左到右显示):
命令
说明
显示类型名
显示变量的类型名称。
显示逻辑结构
Flash Builder 中不支持此命令。
全部折叠
折叠“变量”视图。
更改变量的值
选择要修改的变量。
右键单击(在 Macintosh 中为按住 Control 键并单击)以显示上下文菜单,然后选择“更改值”。
输入新值,然后单击“确定”。
此时变量将包含新值。
修改过的变量显示为红色。
查找变量
要在“变量”视图中查找变量或变量成员,请选择“变量”视图,然后输入要查找的变量名称。也可以使用通配符 (*) 搜索出现在变量名称中任意位置的词(例如,“*color”)。
“变量”视图中表示变量的图标
“变量”视图使用图标和覆盖为正在显示的变量类型提供可视提示。有关图标及其含义的列表,请参阅表示语言元素的图标。
“变量”视图
使用“表达式”视图
可使用“表达式”视图观察在“变量”视图中选择的变量,并在调试应用程序时添加观察表达式并对其求值。
调试时可以检查并修改所选的要观察的变量的值。还可以添加观察表达式,即要在调试暂停时对其求值的代码表达式。在您单步跳入函数时有些变量可能超出了作用域,因此不会显示在视图中,观察表达式对观察这些变量非常有用。
“表达式”视图提供下列命令,这些命令位于“表达式”视图工具栏中(从左到右显示):
命令
说明
显示类型名
显示“表达式”视图中的项的对象类型。
显示逻辑结构
Flash Builder 中不支持此命令。
全部折叠
折叠视图中的所有表达式。
删除选择的表达式
删除所选变量或观察表达式。
删除所有表达式
删除“表达式”视图中的所有变量和观察表达式。
您还可以在源代码编辑器中将鼠标指针悬停在表达式或变量上,以工具提示的方式查看它们的值。可以右键单击,然后在菜单中选择“观察”,将表达式添加到“表达式”视图。
表达式示例
Flash Builder 调试器支持多种简单表达式和复杂表达式。下表列出了可在调试会话期间对其求值的表达式示例。此列表并未涵盖所有支持的表达式,它仅为可执行特定操作的表达式样例。
支持的表达式示例 表达式
说明
myString.length
返回字符串的长度。
myString.indexOf(‘@’)
跟踪“@”字符的索引。
"constant string".charAt(0)
跟踪字符串中特定位置处的字符。支持字符串常量。
employees.employee.@name
employees 是 XML 变量。此类表达式用于调试 E4X 应用程序。
x == null
代表表达式中的值的保留字。
user1 === user2
支持大部分 ActionScript 运算符。
MyClass.myStaticFunc()
被解析为类的函数。
this.myMemberFunc()
使用关键字 this 解析的函数。
String.fromCharCode(33)
字符串实际上是函数,不是类,而 String.fromCharCode 实际上是该函数的动态成员。
myStaticFunc()
仅当 myStaticFunc 在当前作用域链中可见时才可对其求值。
myMemberFunc()
仅当 myMemberFunc 在当前作用域链中可见时才可对其求值。
Math.max(1,2,3)
支持数学函数。
mystring.search(/myregex/i)
支持正则表达式。
["my", "literal", "array"]
创建数组。
new MyClass()
实例化类。
"string" + 3
正确处理字符串加整数。
x >>> 2
支持逻辑移位运算。
3.5 + 2
正确执行算术运算。
表达式求值的局限性
表达式求值有下列局限性。
不支持命名空间。
不支持嵌入对象。
不支持关键字 super。
不支持完全限定的类名称。
例如,无法对 mx.controls.Button 求值。
可以引用非限定类名称。例如,可以指定引用 mx.controls.Button 的 Button。
如果类名不明确(不同包中的两个类名称相同),则无法控制将对哪个类求值。但是,您可以指定:
getDefinitionByName("mx.controls.Button")可以对大多数 E4X 表达式求值,但不支持 E4X 过滤器表达式。
例如,无法对 myxml.(@id=='3')) 求值。
无法调用定义为变量的函数。
使用观察点
调试应用程序时,可以在变量的特定实例上设置观察点,以在观察的变量值发生更改时终止执行。由于观察点是针对变量的特定实例设置的,因此无法在代码编辑器中设置观察点。您可以在调试会话期间,在“变量”视图中设置观察点。
设置观察点时,须牢记下列几点:
调试会话结束时,将删除所有观察点。
无法在 getter 上设置观察点,但可以在 getter 的字段上设置观察点。
例如,无法在 width 上设置观察点,但可以在 _width 上设置观察点。
无法在局部变量上设置观察点,但可以在局部变量的成员上设置观察点,如以下代码片段所示。
public class MyClass
{
// These are fields of a class, so you can set a watchpoint on
// 'memberInt', and on 'memberButton', and on 'memberButton._width':
private var memberInt:int = 0;
private var memberButton:Button = new Button();
public function myFunction():void {
// You CANNOT set a watchpoint on 'i', because it is local:
var i:int = 0;
// You CANNOT set a watchpoint on 'someButton', because it is local;
// but you CAN set a watchpoint on 'someButton._width':
var someButton:Button = new Button();
...
}当对象实例的原始值更改时,因为存在观察点而终止执行。
这不同于在变量值发生更改时,在条件断点中使用表达式来终止执行的情况。
设置观察点
在调试会话中,可通过以下两种方式设置观察点:
在“变量”视图中,打开变量的上下文菜单,然后选择“切换观察点”。
在 Flash Builder 的“运行”菜单中选择“添加观察点”。
在“添加观察点”对话框中选择要观察的变量。
“变量”视图上将显示一个“铅笔”图标,表示已在该变量上设置了观察点。
注: 如果尝试在 getter 上设置观察点,则 Flash Builder 会打开一个对话框,为观察点建议一个有效变量。如果删除建议的变量,对话框将列出该对象的所有有效变量。
使用“运行至行”
Flash Builder 提供了“运行至行”命令,用于在调试会话期间退出循环。
调试时,您可能发现代码正在执行一个重复了多次的循环。要退出此循环,请使用“运行”菜单中的“运行至行”命令。
分享到:
相关推荐
### FlashBuilder 4 使用手册详解 #### 一、引言 随着互联网技术的不断发展与进步,FlashBuilder 作为一款强大的开发工具,在制作交互式应用程序、游戏等方面发挥了重要作用。本手册旨在为用户提供一个全面且详细...
至于提供的压缩文件名"org.eclipse.jdt.debug_3.5.0.v20090526",这看起来是Eclipse Java调试器的一个组件,可能与Flash Builder 4的基础Eclipse平台有关,但不是直接与VSS插件相关的。它可能是在Flash Builder中...
这个压缩包"FlexBuilder3 Debug.rar"包含了用于调试Flex应用程序的关键组件,特别是"flashplayer_9_plugin_debug.exe"文件,这是Flash Player的调试版本。 1. **FlexBuilder3**: FlexBuilder3是Flex SDK的配套开发...
#### 2.3.2 调试程序 设置好断点后,通过“运行”→“调试”命令或工具栏快捷键(F11)启动调试。调试器会自动进入“Flash Debug”透视,显示调试视图,帮助开发者监控变量变化,定位问题。 ### 2.4 Flex 4项目...
总结来说,这个主题涵盖了使用Flex Builder 3进行Flex应用开发的关键知识点,包括IDE的调试工具,源码管理和编辑,以及与Flash Player Debug版本的配合使用。通过深入理解这些概念和技巧,开发者能够更有效地创建、...
在Flash ActionScript3游戏开发中,使用FlashBuilder生成SWC文件是一个重要的步骤,尤其是在构建可重用组件或库时。SWC(Shockwave Flash Component)是Adobe提供的一个库格式,它允许开发者打包ActionScript代码、...
- **Flash Debug视角**:提供专门的调试界面。 - **调试应用程序**:逐行执行代码,设置断点,检查变量状态。 - **性能分析视角**:监控应用程序的运行状况。 - **性能分析**:评估应用程序的性能瓶颈。 - **垃圾...
如果你使用的是Flash Builder或其他Flex开发工具,检查调试配置是否正确。确保在项目设置中启用了调试模式,并且调试器的连接参数(如端口、主机名)设置无误。在描述中提到,需要进入浏览器调试界面,选择“调试器...
Eclipse通过集成Adobe Flex Builder或使用Flash Builder插件,可以为Flash项目提供完整的开发环境。这两个工具都提供了强大的调试功能,包括断点、变量查看、调用堆栈以及性能分析等。 二、设置Flash项目 1. 创建...
在实际使用中,SOS Max可能与Flash Professional或Flash Builder等IDE集成,提供便捷的快捷键和界面元素,使得调试过程更为流畅。同时,它可能具备错误和异常捕获机制,能在问题出现时立即通知开发者。 总的来说,...
**问题描述**:当使用FlexBuilder进行调试时,如果安装的Flash Player版本不支持调试模式或者版本过低,则可能导致无法正常调试。 **解决方法**: 1. **检查Flash Player版本**:首先确认当前系统中安装的是最新版...
这篇名为“Flex Debug”的博文可能详细介绍了如何使用Flex的调试工具,包括Flash Player的Debug版本。`flashplayer_11_ax_debug.exe` 文件是Adobe Flash Player的一个特殊版本,特别为开发和调试ActionScript代码而...
在本教程中,我们将深入探讨如何使用Eclipse调试器来调试Flash应用程序。Eclipse是一款强大的集成开发环境(IDE),广泛用于Java和其他语言的开发,但它同样支持Adobe Flash内容的开发和调试。通过集成的Flex ...
- Flash Builder 4:它是Flex开发的主要集成开发环境(IDE),提供了上下文相关的代码提示、逐步调试器、可视化设计环境、数据服务向导等功能,有标准版和增强版之分,增强版增加了企业级特性,如内存和性能检测、...
默认情况下,Flash Builder 会把 FLEX 应用程序编译到项目文件夹下面的一个名为“bin-debug”的目录下。源文件将会保存在项目目录中的“src”目录下。 4. FLEX 命名空间 FLEX 命名空间是 FLEX 框架的核心组成部分...
- **开启Flex Debugging**:在Flex Builder中,你需要确保项目的编译配置选择为“Debug”模式,以便生成包含调试信息的SWF文件。 - **设置断点**:在源代码中设置断点,当程序执行到该点时会暂停,让你能够检查...
同时,FlashBuilder还支持在Debug模式和Release模式下编译项目,前者便于调试,后者则针对最终用户进行优化。 ### Flex组件 Flex拥有丰富的内置组件,这些组件被分为四大类:常见组件、布局组件、导航组件和图表...
比如,使用Flash Builder可以快速开发桌面和移动应用程序。了解如何安装和使用AIR SDK和Flex SDK是构建AIR应用的关键步骤。 5. 创建AIR应用程序:这部分涉及实际动手创建AIR应用程序。可以使用多种方法和工具来创建...
2. Flex Builder或Flash Builder的使用,介绍其界面、项目创建、代码编辑和调试功能。 3. MXML语言基础,包括组件声明、属性设置和事件处理。 4. ActionScript编程,包括基本语法、类和对象、数据类型、函数等。 5. ...