2012-09-14 33 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)文件夹中。

相关问题