杂谈:用 Sublime Text 2 写 ActionScript3

Sublime Text这是程序员最喜爱的编辑器,说说在win7下使用Sublime Text来编写as文件以及编译与运行swf。

准备工作

 1、Sublime Text 2
2、Java 的JDK(jdk-8u31-windows-i586.exe官网下载32位最新的版本)
3、Flex的SDK(flex_sdk_4.6)
4、Flash Player debug

  

  OK,下载Java的JDK后并安装,配置JDK的方法很简单网络上有一大堆,配置好就行,一定要注意:如果FlexSDK是用的32位的那么JavaJDK也要使用32位的,64位的也一样都要一致,不然会发生“ cound not find a JVM ”的错误。在解压后的flex_sdk_4.6/bin文件夹下有jvm.config文件,它对应mxmlc.exe。修改其中的java.home,路径是安装JavaJDK的位置,注意“/”的方向。

  在解压后的flex_sdk_4.6/bin文件夹下有jvm.config文件,它对应mxmlc.exe。修改其中的java.home,路径是安装JavaJDK的位置,注意“/”的方向。

杂谈:用 Sublime Text 2 写 ActionScript3

配置mxmlc环境变量

  新增环境变量MXMLC_HOME,指向的路径为FlexSDK路径。并把MXMLC_HOME加入系统Path变量内。如图。

杂谈:用 Sublime Text 2 写 ActionScript3

杂谈:用 Sublime Text 2 写 ActionScript3

  配置好环境变量后保存并运行cmd控制台,输入mxmlc回车,看是否如下图成功,如果不是那么请检查环境配置。

杂谈:用 Sublime Text 2 写 ActionScript3

Sublime Text安装插件

  安装插件步骤:ctrl+shift+p打开插件安装列表,并输入

Package Control:Install Package

杂谈:用 Sublime Text 2 写 ActionScript3

  然后安装插件ActionScript 3和插件ConvertToUTF8

杂谈:用 Sublime Text 2 写 ActionScript3

杂谈:用 Sublime Text 2 写 ActionScript3

创建Sublime Text Build文件

Tools ->Build System -> New Build System...

杂谈:用 Sublime Text 2 写 ActionScript3

  先不写入信息,保存文件到插件文件夹下

杂谈:用 Sublime Text 2 写 ActionScript3

  这里为了方便我写了一个批处理文件,执行Sublime Text在编译as文件时产生的处理。

在上面的目录下继续新建一个 runFlash.bat文件,写入

@ECHO Compiling %~nx1……
E:\flex_sdk_4.6\bin\mxmlc.exe %~nx1 -debug
start %~n1.swf

“-debug”是开启日志log的记录用于检测trace信息)

  然后在ActionScript 3.sublime-build文件内写入

{
"cmd": ["C:\\Program Files (x86)\\Sublime Text 2\\Data\\Packages\\ActionScript 3\\runFlash.bat","${file}"],
"encoding": "GBK"
}

  设置flex-config.xml ,在E:\flex_sdk_4.6\frameworks文件夹下把xml里面

<static-link-runtime-shared-libraries>false</static-link-runtime-shared-libraries>

改为

<static-link-runtime-shared-libraries>true</static-link-runtime-shared-libraries>

不然会报:

警告: 此编译单元不包含在 Frame 元数据中指定的 factoryClass,无法加载配置的运行时共享库。要在没有运行时共享库的情况下进行编译,请将 -static-link-runtime-shared-libraries 选项设置为 true,或删除-runtime-shared-libraries选项。

运行swf

注意:在写as文件时要使用UTF-8编码保存文件。因为在astrace打印出来的是以utf-8编码的,所以为了避免乱码,安装ConvertToUTF8插件后保存文件为utf-8格式。

杂谈:用 Sublime Text 2 写 ActionScript3

选择Build System

杂谈:用 Sublime Text 2 写 ActionScript3

ctrl+b运行下文件:

杂谈:用 Sublime Text 2 写 ActionScript3

杂谈:用 Sublime Text 2 写 ActionScript3

OK,到目前为止,已经可以成功运行!如果代码有问题会在下方控制台提示。

查看ActionScript3的trace打印信息

  Sublime Text控制台不会显示Flash Player的打印信息。因此想要看到我们的打印位置是否被执行到改怎么办呢?好吧,其实在我们可以在

C:\Users\Administrator\AppData\Roaming\Macromedia\Flash Player\Logs
文件夹下看到一个文件flashlog.txt

杂谈:用 Sublime Text 2 写 ActionScript3

这个文件就是trace的输出

杂谈:用 Sublime Text 2 写 ActionScript3

  注意:当新的flash 启动时,flashlog.txt文件会被重新清空!里面的内容将被删除。

如果有一个swf被运行时,flashlog.txt文件大小为0KB,这时开始打印信息,flashlog.txt文件增大。

  又一个swf被运行,这时有两个swf在运行,flashlog.txt文件将被清空为0KB,两个swf的打印信息将同时存在于flashlog.txt文件中。

  如果你在玩页游,浏览器中的swf也会显示在这里……

延伸

最佳的配置方法是:把runFlash.bat放在AS项目文件夹下,每个AS项目对应自己的runFlash.bat文件。

修改bat内容

@echo off
set name=HelloWorld
set filepath=d:\000\%name%.as
set libpath=D:\000\lua-alchemy-v0.3.2.swc
set outfile=D:\000\%name%.swf
@echo Compiling %name%……
E:\flex_sdk_4.6\bin\mxmlc.exe %filepath% -debug -library-path+=%libpath% -utput=%outfile%
start %outfile%

name:主文件名。 filepath:主文件路径。libpath:库文件路径也可以是存放swc的文件夹。outfile:输出文件路径)

“-library-path+=lua-alchemy-v0.3.2.swc”这个参数是导入swc库文件,在编译时会把swc库文件编译进去)

  修改ActionScript 3.sublime-build 内容

{
"cmd": ["..\\runFlash.bat"],
"encoding": "GBK"
}

  这样的好处是在本项目任何文件下都能正确的执行主文件,下图在Hello.asctrl+b

杂谈:用 Sublime Text 2 写 ActionScript3

上一篇:something for learning


下一篇:Using NuGet without committing packages to source control(在没有把包包提交到代码管理器的情况下使用NuGet进行还原 )