代码之家  ›  专栏  ›  技术社区  ›  daniel.sedlacek

如何使用命令行编译Flash.FLAs?

  •  4
  • daniel.sedlacek  · 技术社区  · 15 年前

    如何使用命令行编译Flash.FLAs?

    我正在使用Eclipse+FDT进行Flash开发,我想使用ANT来实现编译的自动化。

    我正在使用AS3,需要为Flash Player 10.1编译。

    非常感谢

    更新:我需要编译。FLAs,因为这是我从我们的设计师那里得到的。

    3 回复  |  直到 15 年前
        1
  •  5
  •   fenomas    15 年前

    总结一下其他答案中可能不明显的地方:FLA文件并不完全是“源”,而是更像Flash创作工具的项目文件,唯一知道如何编译它们的就是这个工具。如果你有Flash Professional并且它是开放的,那么其他工具(或者命令行)可以告诉它编译,但是除非你以某种方式改变你的工作流程,比如从你的设计师那里得到FLAs以外的东西,或者你把脚本、SWCs等给设计师,让他们导入和编译,否则这是你能做的最好的事情。

    尽管如此,在最新的版本中,a do be已经将FLA文件从原来的样子(创作工具的一个糟糕的二进制内存转储)改为一个更容易访问的压缩文件夹,其中充满了XML和图像等等,因此在未来,第三方工具应该可以对FLAs做一些有用的事情。但目前,上述XML的格式显然还不稳定,而且我还没有听说有任何其他工具开始处理FLAs。

        2
  •  2
  •   Community Mohan Dere    9 年前

    used with ant 轻松构建flex应用程序。

    <?xml version="1.0" encoding="utf-8"?>
    <!-- build.xml -->
    <project name="My App Builder" basedir=".">
      <property name="FLEX_HOME" value="C:/flex/sdk"/>
      <taskdef resource="flexTasks.tasks"
          classpath="${FLEX_HOME}/ant/lib/flexTasks.jar"/>
      <property name="APP_ROOT" value="myApp"/>
      <target name="main">
          <mxmlc file="${APP_ROOT}/Main.mxml" keep-generated-actionscript="true">
              <load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"/>
              <source-path path-element="${FLEX_HOME}/frameworks"/>
          </mxmlc>
      </target>
    </project>
    

    编辑

    FLA格式是一种单一且难以合并的格式。当然,您可以告诉您的设计人员将FLA作为SWF文件从创作工具导出,甚至从 from the command line .

    但是,如果您正在添加AS3脚本并将几个FLA文件合并在一起,您可能需要重新考虑您的管道。也许设计师应该给你 MXML files . MXML是一种XML标记语言,用于布局用户界面组件。然后使用images、MXML和AS文件从命令行构建SWF。

        3
  •  1
  •   zeh    15 年前

    只有在编译之前需要执行高级任务时,才需要ANT。即使在这种情况下,您也可以使用命令将ANT任务设置为在运行启动配置文件之前运行,而不是在ANT中编译。

    现在,如果你 真正地 需要从一个ANT任务编译,您使用这样的东西。。。

    <target name="web_compileDebug">
        <exec executable="${flexdir}/bin/mxmlc.exe" failonerror="true">
            <arg line="'./source/org/package/DocumentClass.as'"/>
            <arg line="-source-path './source'"/>
            <arg line="-default-frame-rate=60"/>
            <arg line="-default-background-color=0xFFFFFF"/>
            <arg line="-default-size 640 480"/>
            <arg line="-strict=true"/>
            <arg line="-warnings=true"/>
            <arg line="-debug=true"/>
            <arg line="-output './deploy/index.swf'"/>
            <arg line="-target-player=10.0.0"/>
            <arg line="-use-network=false"/>
        </exec>
    </target>
    

    当然,用Flex SDK的位置或变量替换它。

    a JSFL script that fires Flash and compiles the file .

    推荐文章