1.4.1 问题
你需要指定MXML编译器的编译选项.
1.4.2 解决方法
在项目属性对话框的Flex编译器面板内设置编译属性.
1.4.3 讨论
MXML编译器,也称mxmlc,是把ActionScript和MXML文件编译成可以在Flash播放器中观看的SWF文件的应用程序.当你在Flex Builder中运行或调试一个Flex应用时,MXML编译器被调用,并且文件将作为一个参数传递给应用. 当你调试播放器时,创建调试SWF的参数将被传给MXML编译器.Flex Builder也可以让你给MXML编译器传一些其他的参数;例如,你可以通过参数指定一个外部的库路径,允许SWF访问本地文件,或设置背景颜色.
要修改项目编译器的设置,右键项目,并从关联菜单中选择属性(图1-9),或从菜单栏选择Project->Properties.
图1-9
在项目属性对话框中(图1-10),选择Flex编译器.在这里有几个选项来控制SWF文件是如何被编译的.在标签为"附加编译参数"的输入框中,你可以添加多个选项;在每个选项前输入连字符(-),并使用空格做选项的分隔.
图1-10
下面是一些常用的选项:
verbose-stacktraces
指定在发生一个运行时错误时,SWF是否包含行号和文件名.这个设置将使生成的SWF文件更大,并且一个使用verbose-stacktraces的SWF不同于一个调试的SWF.
source-path path-element
添加一些目录或文件到包含MXML或ActionScript的源路径上.你可以使用通配符来包含一个目录下的所有文件和子目录.同样你也可以使用+=将新的参数附加到默认选项上,或是将一些选项设置放入一个配置文件,例如:
-source-path+=/Users/base/Project
include-libraries
指定一个编译的SWC文件到应用中,链接库里的所有的类和资源到SWF中.如果应用将导入其他可能在SWC中需要访问的类的模块地,这个选项是非常有用的.
library-path
与include-libraries选项相似,但是只包使用在SWF中的含类和资源.这让你易于控制SWF文件的大小.
locale
指定SWF文件使用的场所.例如,使用-locale=es_ES将指定SWF的使用场所为西班牙.
use-network
指出SWF是否将访问本地文件系统,是否打算供本地机器使用,是否按Flash Player安全标准来使用。例如,使用-use-network=false来指定SWF将拥有对本地文件系统的访问,但不能够访问任何网络服务.默认值是true.
frames.frame
Enables you to add asset factories that stream in after the application and then publish their interfaces with the ModuleManager class. The advantage of doing this is that the application starts faster than it would have if the assets had been included in the code, but does not require moving the assets to an external SWF file. One of the more difficult and more useful parameters.