2011-03-26 68 views
0

我收到一個Flex項目,當試圖編譯它時,我得到了幾個1046錯誤,說Type找不到或者不是編譯時常量MyClassFlex - 錯誤1046 - 一些.as文件沒有得到importet

但是 - 各自的文件都列在文件的頂部導入條款是這樣的:

import com.folder1.folder2.folder3.MyClass; 

,如果我檢查的文件夾結構,MyClass.as是存在的。但是,如果我輸入這個相同的行(import com.folder1.folder2.folder3.MyClass;)並檢查每一行。自動完成提示什麼,我只看到硬盤上實際存在的類的一部分。

什麼決定自動完成功能建議哪些類和文件夾?我沒有得到相應的導入語句導入MyClass的任何編譯錯誤

//編輯:

截圖1顯示發生錯誤,試圖導入類問題(更新)

文件
http://neo.cycovery.com/flex_problem.gif 

截圖2示出Updater.as

http://neo.cycovery.com/flex_problem2.gif 

該文件的路徑的截尾部分在兩種情況下(文件夾結構和封裝狀態匹配在Updater.as)

截圖3只顯示了錯誤實際發生換貨:

http://neo.cycovery.com/flex_problem3.gif 

有趣的是,變量聲明

private var _updater:Updater = new Updater(); 

進一步向上的文件中並沒有給出錯誤

回答

1

該項目設置錯誤。它顯然你的應用程序找不到這些類。
將您的「com」文件夾和所有內容寫入您的「src」文件夾中。
或者也許包含文件在你的源代碼路徑中?
右鍵單擊該項目名稱 - >屬性 - > Flex構建路徑 - >添加文件夾

0

導入基於文件本身內的「包」聲明(位於文件的頂部)。如果文件的包聲明與實際的文件夾結構不匹配,則會出現問題。

+0

謝謝。我檢查了這一點,包聲明與文件夾結構相匹配。請參閱我添加到原始文章中的屏幕截圖 – Mat 2011-03-26 22:41:55

+0

嘗試對您的項目執行「清理」。 – 2011-03-26 22:59:38

+0

您的活動文件夾在第一張照片上似乎爲空。 – robertp 2011-03-26 23:03:20

0

檢查您在自動完成列表中看不到的類。也許這些類的包名稱與實際結構不匹配。

Rob

+0

謝謝。我只是檢查了這一點,並且名稱似乎相匹配。我添加了截圖到我原來的帖子 – Mat 2011-03-26 22:43:07

0

檢查您的ActionScript源路徑。你看到的文件夾(事件和對象)有沒有明確的存在,其他的不存在?通常情況下,您將所有源代碼放在源文件夾中的src文件夾中,以便編譯器可以在其中找到任何內容。但你可以輕鬆地使你的源代碼路徑太具體,只看到幾件事...