flash – 使用MXMLC从命令行编译actionscript

前端之家收集整理的这篇文章主要介绍了flash – 使用MXMLC从命令行编译actionscript前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个微小的动作脚本“项目”由两个文件组成,称为foo.as和bar.as.由于我不会进入,我真的很想从命令行构建.SWF,而不必设置任何形式的正式项目。我曾经使用的每个编译器都可以让你这样做,但是对于我来说,我不知道如何强制MXMLC编译这两个文件并将它们链接到一个SWF中。

天真地,我试试

MXMLC foo.as bar.as

但是我被通知只允许一个源文件

好的,假设我分别编译了这两个文件,我将如何将它们链接在一起以获得最终的SWF?

注意:我有两个文件而不是一个文件的唯一原因是每个文件只需要一个类。我尝试将这两个类放在一个文件中,并将其中一个类置于私有或内部,但这些想法都不工作。我会惊喜地发现我可以把多个类放在一个文件中(只有一个是公开的)。

解决方法

这是一个两部分的问题,所以我会分别回答。

将两个类文件编译成一个SWF

MXMLC将自动编译从您提供的入口点(您的主要类)找到的所有类。它从您的导入语句和完整的类路径定义中查找类。

这是一个非常好的guide for using MXMLC command line编译您的AS3项目。这篇文章有点过时,但信息还是不错的。他详细介绍了使用命令行编译器时需要了解的内容包括MXMLC选项,编写BAT脚本,以及有关AS3的内容,如果您知道自己在做什么,您可以跳过。

文件中拥有多个类

AS3允许你每个文件有一个类,加上你喜欢的“帮助”类。它不支持像Java那样的保护和私有类。助手类只能在它们定义的文件中可见。

助手课程位于包裹声明之外(对我来说有点怪异)。这是一个例子:

package com.mynamespace
{
     public class Foo 
     {
          private var _fooHelper:FooHelper = new FooHelper();
     }
}

// helper class imports also go outside the package.
import com.example.xml.SaxHandler;
class FooHelper
{
     private var bar:Number = Math.random();
}

猜你在找的Flash相关文章