2013-07-31 20 views
0

現在Flash Builder告訴我,當我調試時我有這些錯誤,但它不會告訴我行號,並且我無法弄清楚錯誤發生時如何使其中斷。這可能嗎?我可以讓Flash Builder在TypeError或ReferenceError上中斷嗎?

實例控制檯輸出:

TypeError: Error #1009: Cannot access a property or method of a null object reference. 
ReferenceError: Error #1056: Cannot create property is_flying on entities.Bird. 

謝謝!

+0

您是否確定安裝了Flash Player調試器?您是否使用「調試」選項來執行您的SWF(而不是「運行」)? –

+0

是的。我正在運行使用調試,我有Flash Player調試器(甚至沒有告訴我有關這些錯誤)。唯一一次顯示錯誤的是在調試選項中運行的控制檯中。 – DustinRiley

+0

好的,因此控制檯中顯示的錯誤意味着Flash Builder已連接到調試Flash Player(好符號)。但是,如果你沒有彈出對話框,或者在控制檯中看到相同的錯誤(我認爲沒有辦法禁用該對話框),這真的很奇怪。你有沒有嘗試重新安裝調試播放器?你有沒有在另一個瀏覽器中嘗試過?例如,Chrome捆綁了它自己的Flash Player,因此如果使用Chrome,請嘗試其他瀏覽器。或者如果不是,請嘗試Chrome。 IE也有它自己的插件...祝你好運! –

回答

1

好,根據你最後的評論,我有兩個建議:

嘗試添加uncaught exception handler應用程式。在該事件處理程序中,您可以打印自己的堆棧跟蹤以查看錯誤來自何處。

private function uncaughtErrorHandler(event:UncaughtErrorEvent):void 
{ 
    // note I suggested doing this, but you might also get some details 
    // out of the event object that is passed to this function 
    var e:Error = new Error('hi'); 
    trace(e.getStackTrace(); 
} 

另外,由於錯誤之一提到is_flying屬性,可以找到此屬性設置和換行代碼在try/catch塊的所有地方。

最後,你和你的同事經歷的確是一個奇怪的場景。如果您可以識別/重現問題,則可能需要向Adobe提交錯誤。

+0

他也可以在變量is_Flying上設置一個WatchPoint。有點像斷點;但是隻要變量發生變化就會觸發它們。 – JeffryHouser

+0

我繼續接受它,但是因爲它發生在一個沒有舞臺的圖書館項目中,所以它沒有捕捉它,這實際上也許是調試器沒有抓住它的原因。謝謝! – DustinRiley

+0

@DustinRiley這沒有意義。所有Flash項目都有一個階段。如果錯誤是從UIComponent拋出的;那麼這個錯誤將會觸發Flex應用程序(以及它上面的舞臺)。但是,如果你沒有庫的源代碼,那麼很難調試裏面的錯誤。 – JeffryHouser

相關問題