我正在尝试使用Flex4 SDK编译现有的Flex3项目。我得到这个错误:使用Flex4 SDK进行编译
Warning: This compilation unit did not have a factoryClass specified in Frame metadata to load the configured runtime shared libraries. To compile without runtime shared libraries either set the -static-link-runtime-shared-libraries option to true or remove the -runtime-shared-libraries option.
得到的文件是大致相同,我的老Flex3编译SWF文件。打在Flash Player生成的SWF文件也给出了以下错误:
An Actionscript error ocurred: VerifyError: Error #1014: Class spark.core::SpriteVisualElement could not be found
如果我设定的编译器属性static-link-runtime-shared-libraries
为true,那么错误消失,一切都很好。但是,所得到的.SWF的大小是几十万的大小。这不是我想要的。
我不完全理解运行时共享库的概念,但似乎静态链接它们设置为true的选项,库包含在.swf中。但是,我喜欢将它们从.swf中排除,并且只在运行时加载所需的库,因为我的项目似乎对Flex3有用(我不知道顺便说一句)。
如果我理解正确,playerglobal.swc应该包含我的.swf必须加载的外部库的所有必需代码。 Flex4编译的文件需要更多的库吗?我应该使用Frame元数据标签中的factoryClass做些什么?
我想我的问题归结为:我如何编译一个Flex4 .swf,它与我以前的Flex3编译的.swf的大小相同?
我不清楚如果你只是想编译flex3项目,或者你真的想包含一些新的/更新的flex4功能。另外:你是在命令行上编译还是使用flex builder/fdt? – 2010-06-20 12:11:24
我需要首先重新编译Flex3项目,并可能稍后添加一些Flex4功能。但编写Flex3项目是我的首要任务。我在命令行上使用mxmlc进行编译。我的项目由多个.as文件组成。 – Monokai 2010-06-20 13:18:39
我假设“path.to.your。预加载”标识某个类的吧?有没有Adobe公司已经为其中的共享库是在那里的主要瑞士法郎发现相同的地方被发现? – 2011-11-24 13:53:10