Flex 調(diào)試應(yīng)用程序

2018-01-01 16:56 更新

Flex提供了卓越的調(diào)試靈活代碼的能力,并且Flash Builder 4具有優(yōu)秀的內(nèi)置調(diào)試器和調(diào)試透視支持。

  • 在調(diào)試模式期間,F(xiàn)lex應(yīng)用程序在Flash Player Debugger版本上運(yùn)行,F(xiàn)lash Builder Debugger版本內(nèi)置在支持調(diào)試功能的Flash Builder 4中。

  • 因此開發(fā)人員可以在Flash Builder中獲得一個(gè)簡(jiǎn)單的內(nèi)置調(diào)試配置

在本文中,我們將演示使用Flash Builder調(diào)試Flex客戶端代碼的用法。 我們將執(zhí)行以下任務(wù)

  • 在代碼中設(shè)置斷點(diǎn),并在BreakPoint Explorer中查看它們。

  • 在調(diào)試期間逐行逐行。

  • 查看變量的值。

  • 檢查所有變量的值。

  • 檢查表達(dá)式的值。

  • 顯示掛起線程的堆棧幀。

調(diào)試示例

步驟描述
1 Flex - 創(chuàng)建應(yīng)用程序章節(jié)中所述,在包 com.tutorialspoint.client 下創(chuàng)建名為 HelloWorld 的項(xiàng)目。
2修改 HelloWorld.mxml ,如下所述。 保持文件的其余部分不變。
3編譯并運(yùn)行應(yīng)用程序,以確保業(yè)務(wù)邏輯按照要求工作。

以下是修改后的mxml文件 src / com.tutorialspoint / HelloWorld.mxml 的內(nèi)容。

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
   xmlns:s="library://ns.adobe.com/flex/spark" 
   xmlns:mx="library://ns.adobe.com/flex/mx"
   width="100%" height="100%"
   minWidth="500" minHeight="500" 
   initialize="application_initializeHandler(event)">
   <fx:Style source="/com/tutorialspoint/client/Style.css"/>
   <fx:Script>
      <![CDATA[
       import mx.controls.Alert;
       import mx.events.FlexEvent;
       protected function btnClickMe_clickHandler(event:MouseEvent):void
       {
          Alert.show("Hello World!");				
       }

       protected function application_initializeHandler(event:FlexEvent):void
       {
          lblHeader.text = "My Hello World Application";				
       }
      ]]>
   </fx:Script>
   <s:BorderContainer width="500" height="500" id="mainContainer" 
      styleName="container">
      <s:VGroup width="100%" height="100%" gap="50" horizontalAlign="center" 
         verticalAlign="middle">
         <s:Label id="lblHeader" fontSize="40" color="0x777777" 
            styleName="heading"/>
         <s:Button label="Click Me!" id="btnClickMe" 
            click="btnClickMe_clickHandler(event)" styleName="button" />
      </s:VGroup>	
   </s:BorderContainer>	
</s:Application>

準(zhǔn)備好所有更改后,請(qǐng)按照 Flex - 創(chuàng)建應(yīng)用一章中的常規(guī)模式進(jìn)行編譯。

步驟1 - 放置斷點(diǎn)

在HelloWorld.mxml的application_initializeHandler的第一行放置一個(gè)斷點(diǎn)

Flex Applying Breakpoint

步驟2 - 調(diào)試應(yīng)用程序

現(xiàn)在點(diǎn)擊<img class="“inline" src"="" attachments="" tuploads="" flex="" debug_icon.jpg="">調(diào)試應(yīng)用程序菜單并選擇 HelloWorld 應(yīng)用程序來調(diào)試應(yīng)用程序。

flex Debug Button

如果一切正常,應(yīng)用程序?qū)⒃跒g覽器中啟動(dòng),您將在Flash Builder控制臺(tái)中看到以下調(diào)試日志

[SWF] \HelloWorld\bin-debug\HelloWorld.swf 
- 181,509 bytes after decompression
[SWF] \HelloWorld\bin-debug\HelloWorld.swf\[[DYNAMIC]]\1 
- 763,122 bytes after decompression
[SWF] \HelloWorld\bin-debug\HelloWorld.swf\[[DYNAMIC]]\2 
- 1,221,837 bytes after decompression
[SWF] \HelloWorld\bin-debug\HelloWorld.swf\[[DYNAMIC]]\3 
- 1,136,788 bytes after decompression
[SWF] \HelloWorld\bin-debug\HelloWorld.swf\[[DYNAMIC]]\4 
- 2,019,570 bytes after decompression
[SWF] \HelloWorld\bin-debug\HelloWorld.swf\[[DYNAMIC]]\5 
- 318,334 bytes after decompression

應(yīng)用程序啟動(dòng)后,您將看到對(duì)Flash Builder斷點(diǎn)的關(guān)注,因?yàn)槲覀円褜帱c(diǎn)放在application_initializeHandler方法的第一行。

Flex Debug Application

你可以看到被掛起的線程的stacktrace。

Flex Debug Stacktrace

您可以查看表達(dá)式的值。

Flex Debug Expressions

你可以看到放置的斷點(diǎn)列表。

Flex Debug Breakpoints

現(xiàn)在繼續(xù)按F6,直到到達(dá)application_initializeHandler()方法的最后一行。 作為功能鍵的參考,F(xiàn)6逐行檢查代碼,F(xiàn)5進(jìn)一步向內(nèi),F(xiàn)8將恢復(fù)應(yīng)用程序。 現(xiàn)在你可以看到application_initializeHandler()方法的所有變量的值的列表。

Flex Debug Variables

現(xiàn)在你可以看到flex代碼可以調(diào)試與Java應(yīng)用程序可以調(diào)試相同的方式。 將斷點(diǎn)放置到任何行,并使用flex的調(diào)試功能。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)