Adobe® ActionScript® Compiler 2.0 (ASC2.0)版本说明
伴随着Flash Builder 4.7 beta的发布,正如Adobe所承诺的那样,新的编译器也浮出水面。全新的编译器到底有哪些改进和新特性,想必是大多数ActionScript开发比较关心的问题。简单翻译了下ASC2.0官方发布说明,希望能对同行们有一点帮助。
如果要了解Flash Builder 4.7,可以参看zrong的这篇文章。
** August 2012 – Adobe® ActionScript® Compiler 2.0 (Build 2.0.0.345083) ** Welcome to the Adobe ActionScript Compiler 2.0 (ASC 2.0) Preview.
ASC 2.0 是一个新的ActionScript® 3.0 (AS3)编译器。相比之前版本更遵循AS3语言规范,编译性能方面有了很大改善。在内存压力下更稳定,并包含一些演示性的优化选项(内联,无用代码删除),这些选项可以有选择地启用。
这个编译器已经包含在刚发布的 Flash Builder® 4.7 预览版中。其单独版本已经同AIR SDK 3.4 一起打包发布。
注意:ASC 2.0支持编译AS3应用,虽然留有熟悉的mxmlc和compc命令行入口,但是不支持Flex应用的编译。
当有更多信息时,该文档可能会不定期更新。
版本说明 – August 2012
- 这是新编译器ASC 2.0 的第一个公开预览版;
- Flash Builder 4.7 and the ASC 2.0 command-line compiler now share the same code model. This avoids duplicate representations of a program and means the IDE has an accurate representation of the language – matching the compiler. (没看懂,不清楚code model,representation的定义)
- 全新多线程架构,支持多文件同时编译,减少编译时间;
- 更佳的常数合并和常数传播带来运行时更佳性能的代码;
- 通过移除不必要的活动记录减少函数开销;
- 包含内联和无用代码删除相关的字节码优化;
- 加入新关键字”goto”,实现AS3的非线性控制流;
- 现在支持SWF 13的LZMA压缩了。
- 新的符号管理系统,意味着包含Flash 和 AIR项目的Flash Builder 4.7 AS工作空间,编译起来应该会快多了;
- fontswf, optimizer,swfdump和swcdepends ,基于ASC 2.0的新版本可以用了;
- Asdoc,fdb的旧版本依然包括在内;
- 字体转码已经从[Embed]语法中移除,现在字体需要先预转码并作为SWF嵌入,可以通过工具(如fontswf或Flash Professional CS6)来完成。
- 源代码中的相对路径([Embed] assets, includes, etc…)将从其包含文件相对解析。要指定一个相对于源文件根目录的路径,需要在你的路径前加”/”;
- 英文编译器错误信息已经翻译成法文,日文,中文,区域取决于JVM的设置,并可以通过 -tools-locale 设置项改写。
安装说明
Flash Builder 4.7
- The Flash Builder 4.7 预览版包含了附带ASC 2.0的AIR SDK 3.4;
- 所有Flash Builder 4.7 ActionScript项目默认使用ASC 2.0编译器;
命令行编译器
- 下载附带ASC 2.0的AIR 3.4 SDK 并解压;
- 需要安装Java 1.6.0+;
- 命令行工具的 ASC 2.0 版本都在SDK的 bin 目录里;
- Flex ant tasks and 的ASC 2.0 版本在ant/lib/flexTasks.jar中;
- Ant tasks 定义为: mxmlc=com.adobe.flash.compiler.ant.MXMLCTask compc=com.adobe.flash.compiler.ant.COMPCTask
已知问题
- 不支持Flex编译;
- AS3 向后兼容性—— 关于在ASC 2.0或Flash Builder 4.7中编译AS3代码的兼容性差异,请参看 AS3兼容性文档。
参考资料