FLEX RSL


今天来公司想发布一些更新,Flex项目编译完成之后发现比原来的swf小了一大截,之前的swf文件1. 2多,而现在的只有700多k,由于以前不是我发布的,所以我就没管直接换上了,发布完成后,发现自己的机器可以上,别人上的时候报RSLerror的什么错误,仔细查看后终于发现了问题。
RSL(Runtime Shared Library)的简写,里面放的是Flex的一些基础共享库,在编译项目的时候可以在Flex Builder中设置是否将RSL打包到项目中,我检查了一下自己的设置,是FrameWork linkage, 所以不是打包在项目里,固然文件变小了。如果将RSL分离出来那么在输出的目录下将会多两个文件framework_3.1.0.2710.swz和framework_3.1.0.2710. swf(那一串数字是版本号),当你访问的时候过程是这样的,当你第一次访问应用的时候,flash player会优先将framework_3.1.0.2710. swz文件加载放到cache目录下,以后就不需再次加载了,如果这个动作失败了,就会加载framework_3.1.0.2710.swf,该文件只能下载到ie缓存.并不能达到RSL功能,只保证项目可正常运行. 出现RSL error的情况可能是以下两种情况
第一,使用低于9.0.115版本的Flash Player
第二,framework_3.1.0.2710.swz和framework_3.1.0.2710.swf未放到服务器的目录下。

我能访问的原因就是在我本地测试的时候已经将那swz放在了player的cache下了。

卢克 /
Published under (CC) BY-NC-SA in categories Programming  tagged with Flex