是否可以在没有原始 .fla 的情况下从 documentClass 文件 (.as) 生成 SWF?
Posted
技术标签:
【中文标题】是否可以在没有原始 .fla 的情况下从 documentClass 文件 (.as) 生成 SWF?【英文标题】:Is it possible to generate a SWF from a documentClass file (.as) without having the original .fla? 【发布时间】:2012-09-07 23:39:52 【问题描述】:我从一个旧项目继承了一个 Actionscript 文件,我被告知可以从中生成 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(, , frameRate="30", backgroundColor="#FFFFFF")]
public class MyClass extends Sprite
// code, code, code
我尝试将它引入 Flash Builder 并使用“作为 Web 应用程序运行”,但我遇到了一堆我不明白的错误(调用未定义的方法、找不到定义)。
我已经完成了相当多的 AS2 编码,但没有那么多 AS3 和零 Flex。我不确定我是否不了解在没有相应 FLA 的情况下编译 SWF 的一些最新方法。
有没有办法将这种类型的文件编译成 SWF?还是我以正确的方式处理它,但可能只是丢失了一些依赖文件?
【问题讨论】:
您忽略了很多我们需要查看的重要信息。重新添加其余的导入并向我们展示您遇到的错误。 您可能缺少一些依赖项,例如,与不以 flash./fl./mx 开头的附加导入一起使用的文件。 感谢您的回复。不幸的是,我无法添加其余的导入,因为它们是专有的,但我相信您可能是正确的。我想我当时正在寻找的是确认如果我确实将所有依赖项都放在了适当的位置,那么我的 Flash Builder 将为我生成一个 SWF。也就是说,Flash Builder 是一种可以仅从 AS 文件(没有 FLA)创建 SWF 的工具吗? @bergie3000 没错。如果附加代码不在源文件夹中,则应从 Actionscript 构建路径“链接”(.as 文件夹/文件的源路径或 .swc 文件的库路径)。 【参考方案1】:是否可以在没有原始 .fla 的情况下从 .as 文件生成 swf:
是的,如果您拥有所有依赖项。
使用 flashBuilder 时,如果您查看所有导入,则任何不以 flash.
或 mx.
开头的文件都是您需要的另一个文件。这也包括这些类文件中的所有导入。
此外,许多 .fla 使用库中的显示对象。如果是这种情况,则需要将它们导出到另一个 swc/swf,然后链接/加载到您的 flashBuilder 项目。这包括组件(“fl”包)。
总结一下: 如果 original.fla 只是一个链接了文档类的空项目,那么如果您已导入所有需要的类文件就可以了。
如果原始 .fla 具有链接或拖放到时间线上的库资源,那么如果您无法获取原始 .fla,就会遇到问题。
如何在 Flash Builder 中执行此操作 在 flash builder 中,创建一个新的 ActionScript 项目。 将所有依赖文件放在它刚刚创建的项目的 src 文件夹中 - 保持它们的文件夹结构/层次结构(包名称表示它期望 .as 文件相对于 src 文件夹的文件夹)。
在树形视图中,找到主.as文件(documentClass),点击右键告诉它是默认的应用程序文件(如果需要,可以删除创建项目时自动生成的文件——项目名称.as)。
运行项目,它会将 swf 放入与项目同名的 bin(或 bin-debug)文件夹中。
【讨论】:
以上是关于是否可以在没有原始 .fla 的情况下从 documentClass 文件 (.as) 生成 SWF?的主要内容,如果未能解决你的问题,请参考以下文章
是否可以在没有警报视图的情况下从 iPhone 中删除照片?
是否可以在没有画布的情况下从 ImageBitMap Web 对象中获取像素?
是否可以在没有 async/await 的情况下从 Promise 返回已解析的值?
是否可以在没有演员表的情况下从 Animal 列表中获取 Dog 列表?