2012-09-14 47 views
1

我從一箇舊項目繼承了一個Actionscript文件,我被告知可以從它生成一個SWF文件,雖然我沒有相應的FLA文件。是否有可能從documentClass文件(.as)生成SWF文件而不具有原始.fla文件?

文件中的代碼如下這種形式:

package { 

    import flash.display.LoaderInfo; 
    import flash.display.MovieClip; 
    import flash.display.Sprite; 
    import flash.display.StageAlign; 
    import flash.display.StageScaleMode; 
    // additional import statements 

    [SWF(width="640", height="480", frameRate="30", backgroundColor="#FFFFFF")] 

    public class MyClass extends Sprite { 
     // code, code, code 
    } 
} 

我試圖將這一到Flash Builder和使用「運行爲Web應用程序」,但我得到了一堆錯誤,我不明白(電話未定義的方法,無法找到的定義)。

我已經做了相當多的AS2編碼,但沒有太多的AS3和零Flex。我不確定如果我沒有及時瞭解一些最新的方法來編譯沒有相應FLA的SWF文件。

有沒有辦法將這種類型的文件編譯成SWF文件?或者我正在以正確的方式去做,但可能只是缺少一些相關文件?

+2

您忽略了許多我們需要查看的重要信息。重新添加其餘的導入內容,並向我們顯示您收到的錯誤。 – redhotvengeance

+1

您可能會遺漏一些依賴項,例如,不是以flash./fl./mx開頭的附加導入文件。 – BadFeelingAboutThis

+0

謝謝你的迴應。不幸的是,我不能添加其他進口,因爲它們是專有的,但我相信你可能是正確的。我想我所尋找的是確認如果我確實擁有所有的依賴關係,那麼我的Flash Builder會爲我製作一個SWF文件。也就是說,Flash Builder是一個只能從AS文件創建SWF的工具 - 沒有FLA? – bergie3000

回答

1

是否有可能產生從。作爲文件的SWF沒有原始的.fla:

是,IF你把所有的依賴關係。

使用flashbuilder時,如果您查看所有導入數據,則任何不以flash.mx.開頭的文件都是您需要的另一個文件。這也包括這些類文件中的所有導入。

此外,許多.fla的用法顯示庫中的對象。如果是這樣的話,那些需要被導出到另一個SWC/SWF,然後鏈接/加載到您的FlashBuilder項目。這包括組件('fl'包)。

所以總結起來:
如果original.fla只是有鏈接的文檔類空項目,那麼你,如果你有所有的進口所需的類文件被罰款。

如果原始.fla的庫資源已鏈接或放到時間線上,那麼如果無法獲得原始.fla,則會出現問題。


如何做到這一點在Flash Builder
在Flash Builder中,創建一個新的ActionScript項目。
將所有依賴文件放入其剛剛創建的項目的文件夾中 - 保留其文件夾結構/層次結構(包名稱代表它期望.as文件相對於src文件夾的文件夾)。

在樹視圖中找到主.as文件(documentClass),右鍵單擊並告訴它它是默認的應用程序文件(如果需要,可以刪除創建項目時自動生成的文件 - projectname.as)。

運行該項目,它會將swf放在與項目名稱相同的bin(或bin-debug)文件夾中。

相關問題