在Mac上设置Actionscript 3编译

时间:2009-08-21 20:11:44

标签: flash actionscript-3

我想在我的MacBook上进行一些Flash开发,利用Flex 3 SDK将Actionscript 3编译成SWF电影。

我如何设置Mac来执行此操作?

我还想了解flash编译器如何将包名称解释为目录结构。

我在高中学习过Flash课程,但它非常依赖于使用Adobe Flash IDE,并且非常注重图形开发,而不是编程和OOP。

例如,我想有一个Application类,它将作为舞台,还有多个其他AS3类作为其他MovieClip,Sprite等。当我构建/编译时,项目目录中的所有类应该构建在一个.swf文件中。

这种情况是否切合实际?可实现的?如果是这样,我该如何到达那里?

谢谢!

2 个答案:

答案 0 :(得分:5)

你的技术背景奥斯汀是什么?如果你来自纯艺术背景,那么解释你需要的一切可能会有点困难。

首先,您需要下载Flex SDK。解压缩从下载中获得的目录时,您将看到一个文件夹bin。 bin中有许多可用于编译Flex的可执行文件。您想要的名为mxmlc。您可以将其链接到/ usr / local / bin或只将文件夹添加到PATH。

如果您创建一个简单文件:

package
{
import flash.display.Sprite;

public class TestSWF extends Sprite
{
    public function TestSWF()
    {
    }
}
}

将它保存在任何地方(我将使用/ tmp / flash /)作为TestSWF.as

在终端命令提示符下键入:

mxmlc TestSWF.as

你会看到输出:

Loading configuration file ......
/private/tmp/flash/TestSWF.swf (561 bytes)

要编译另一个文件,请创建另一个目录:

mkdir model

在名为TestModel.as

的新模型目录中创建一个新文件
package model
{
import flash.display.Sprite;

public class TestModel extends Sprite
{
    public function TestModel()
    {
    }
}
}

请注意包定义如何具有名称model,目录名称​​也是模型。这就是包的工作原理。包名称与目录名称匹配。如果你深入了解目录(例如model / helper / FileLoader.as),那么包名称会将目录/切换一段时间(例如import model.helper.FileLoader)

将TestSWF更改为:

package
{
import flash.display.Sprite;

import model.TestModel;

public class TestSWF extends Sprite
{
    public function TestSWF()
    {
        var model:TestModel = new TestModel();
    }
}
}

再次运行:

mxmlc TestSWF.as

你会看到输出:

Loading configuration file ......
/private/tmp/flash/TestSWF.swf (561 bytes)

mxmlc将自动找到类model.TestModel,因为它默认包含类路径中的主文件根目录。

这是最基本的编译文件的可能方式。它将用于测试,游戏和非常小的项目。如果您计划开发专业或非常大的项目,我建议使用更好的IDE(例如Flex Builder)或至少使用体面的构建系统(例如ant)。 Flex Builder或其他Flex特定IDE的主要优点是它们隐藏了构建/编译软件时常见的复杂性。

答案 1 :(得分:0)

好吧,我是一个Windows用户,但是从我不知道的情况来看,大多数mac actionscripters都跟TextMate一起...我偶然在一些教程中看到了它,它给人的印象很好...... / p>

除此之外,我不知道......你可能想要虚拟化windows xp左右,并让FlashDevelop运行(严重的是,很多mac用户实际上都是这样做的!),在我看来是最好的动作编辑器,可能是我实际上坚持使用Windows的最重要原因......:D

使用这两种工具你想要做的事情应该很容易......

希望有帮助......;)

格尔茨

back2dos