2011-11-05 150 views
8

我正在使用Flash Builder 4.5(也包含庫Away3D 4.0和Flex 4.5.1 SDK)開發AS3項目。VerifyError:錯誤#1014:無法找到類

此外,我添加了我自己的SWC庫,我以前編譯到我的項目。 它可以找到,如果我在SWC庫中導入類,但是我想在一個獨立的flash播放器我的SWF運行11

我按照這個教程: http://help.adobe.com/en_US/flashbuilder/using/WSe4e4b720da9dedb5-4dd43be212e8f90c222-7ffb.html

現在,我可以運行我的應用程序在Flash Player 11中,但我在運行時出錯:

VerifyError: Error #1014: XXX class could not be found

XXX是我在SWC庫中的類。我應該如何解決這個問題?

+1

我已經解決了!當你添加Swc文件夾。它必須被合併到代碼中! – Nohappy

+1

您能否詳細說明您的解決方案? –

回答

10

合併到代碼意味着這一點,在項目屬性 - >Flex構建路徑 - >庫路徑 - >框架鏈接。框架語言有兩種選擇合併到代碼RSL。選擇併入代碼。這應該可以解決你的問題。

+0

只是因爲某些原因在Flash Builder 4.6中添加了它,它只允許您在添加swc文件夾時合併到代碼中。僅僅添加swc文件不會讓你因爲某種原因使用合併到代碼中...... – Martamius

+0

如果你不能在你的RSL中使用_Merge到code_中,你可能會考慮重新組織庫的引用順序,更多細節[here] (http://www.kahunaburger.com/2009/04/08/flash-player-verifyerror-error-1014-with-rsls/) –

3

在我的情況下,我們有一個嵌套的引用到相同的庫,需要加載之前,其他庫也使用它。此修復可以通過取消選中「根據依賴性自動確定庫排序」並將庫移至Build路徑庫鏈中來完成。 Flash Builder無法確定依賴關係的正確順序,因爲我們有同一個庫的兩個不同版本。錯誤只會在運行時發生。

1

安裝AIR 3.9並嘗試升級項目後出現此問題。

也有人說,在拋出一系列#1014錯誤之前,有一個RSL錯誤。

它的工作後,我設置高級ActionScript設置的textLayout.swc鏈接類型,而不是默認的(RSL)

希望這有助於爲「合併成代碼」!

5

我們在嘗試使用本機擴展構建項目時遇到此問題。

網元內部的類在運行時沒有找到,但可以在Flash Builder中訪問。

原來,默認情況下.ANE文件沒有被複制到設備。

爲了解決這個問題,更改以下項目屬性:

ActionScript構建包裝 - >蘋果iOS - >本地擴展 - >檢查 '包' 的ANE

不知道爲什麼它沒有被默認包含在內。當您取消選中「包裹」時,您會收到警告,告訴您可能會導致運行時問題!

1

因爲我降落在這個搜索頁面上的此錯誤消息,並沒有上述解決方案的工作對我來說,這裏是如何我終於設法解決它:

看來,這個錯誤發生特別是當你有舊用舊編譯器編譯的庫,但用新編譯器編譯你的應用程序。不幸的是,錯誤有時會引發,當你重新編譯時,它不會;在其他時候它在調試版本中可以正常工作,但是在發行版中失敗。

什麼工作對我來說是包含在你的主應用程序虛擬對象這是類的校驗錯誤的情況下抱怨:

import some.classpath.to.TheClassThatFailsOnVerify; 
function YourMainApp(){ 
    var dummy:TheClassThatFailsOnVerify = new TheClassThatFailsOnVerify(); 
} 

至少在我的情況下,僅錯誤解僱那名班不是直接在應用程序中使用,而是僅在swc庫代碼的內部使用,所以通過在主應用程序中使用虛擬對象,我強制Flash Builder將這些類包含在編譯中。

在某些情況下,您可能必須首先找到包含相關類的swc,因爲它不是您使用的庫swc的一部分,但它又是swc使用的庫。

相關問題