2011-05-10 68 views
2

嗯,這有點荒謬;並且可能令人難以置信,但是當MXML FLEX Main.mxml中的標記中有超過五百行動作時,所有語法突出顯示,錯誤和語法驗證,錯誤報告,「問題」窗格甚至編譯失敗。刪除任何代碼塊後,它會再次運行。><fx:Script>> 500行,它全部停止工作

我不明白爲什麼Adobe可以發佈諸如Flash Builder 4.5 Premium之類的產品,有這個大問題;沒有人注意到。因此,我認爲問題與我的電腦或我的項目有關;因爲現在有更多的人發生這種情況,如果我甚至無法在Google上找到它的話。

此外,在代碼上方的MXML屬性中定義的許多對象,即使是在所有州中的那些對象,現在都會顯示爲警告:將未定義屬性訪問到文檔的一側。但是,這些警告並未顯示在「問題窗格」中,甚至沒有突出顯示與該消息有關的正確代碼段。

已嘗試嘗試並修復此問題的步驟: 我已嘗試重新啓動以及重新安裝IDE(Adobe Flash Builder 4.5)。 我曾嘗試創建一個新項目。 我試圖將我的代碼分成更小的.as文件幷包含它們。 我試過編譯我的應用程序。

沒有工作,請幫助。

-

編輯1:針對第一個答案,我已經嘗試通過在主安裝編輯flashbuilder.ini和flashbuilderC.ini文件增加分配給的Adobe Flash Builder 4.5中的記憶文件夾,它沒有幫助;因爲我的堆(右下方的堆顯示)始終不會超過128MB(即使在編譯期間)也不會解決任何問題。

回答

5

你可以嘗試以下步驟:

  1. 您可以嘗試的eclipse.ini編輯分配更多的內存爲您的Eclipse/Flash Builder中。
  2. 您可以嘗試使用mxmlc compiler從命令行編譯您的項目並比較結果。
  3. 你可以嘗試拆分你的代碼,但不能只使用包括(你應該永遠避免)的代碼,但是提取子組件(關鍵字是重構,OOP,組合等)。

當然,你可以使用所有這些建議一起:)

的反正你應該避免在一個MXML文件的Script塊大的代碼清單。 MXML Script塊的主要目的是通過事件處理程序和所需的字段聲明來實現簡單明瞭的代碼。

+0

我的代碼是一個聊天客戶端,所以幾乎每個狀態,按鈕,文本字段等都有一個或多個事件處理程序。只要我將它們標記爲公開,我可以使用>語法來外購我的事件處理程序嗎?那麼默認的「保護」會怎麼樣呢,它們會允許它們在其他文件中嗎?另外,請參閱第一篇文章,因爲我附加了其他信息。 – cbroughton 2011-05-11 00:48:01

+2

在'Script'標籤內使用'source'只不過是代碼外部化和模塊化的錯覺。編譯器只是將它包含在編譯過程中,因爲它是一個'腳本'體。「include」指令也是如此。我建議你提取一些邏輯子組件,爲它們創建自定義事件,並使主應用程序更小,更易讀。 – Constantiner 2011-05-11 08:32:34

+0

嗯,謝謝。這似乎有很大的幫助。只有當我嘗試編譯應用程序並且失敗時,「問題窗格」仍然不會更新。只有這樣它才能檢查問題並更新問題窗格,因此我發現自己打開每個文件並掃描右邊的黃色和紅色標記:/。 – cbroughton 2011-05-11 09:58:57

相關問題