好吧,关于 Flex RSL、如何重新编译 Flex SDK 及其未签名的 RSL,我学到的东西比我需要了解的要多,而且重新编译不是必需的。
目前,我从构建过程中消除了 flex 配置文件,并且能够只关注 RSL 问题。由于类依赖性和进程顺序,-runtime-shared-library-path 的列出顺序很重要。此外,请确保至少将未签名的 RSL 复制到您的输出路径中。否则,您将看到以下错误:错误 #2032:流错误。网址:file:///.../cmd-bin-debug/textLayout_1.1.0.604.swf
最后,如果您确实需要使用由 FlashBuilder 转储的 flex 配置文件,则需要对其进行转换以预先添加到 RSL 的完整路径。此外,请注意 FlashBuilder 项目设置与转储到 flex 配置中的内容之间的差异。我发现我需要告诉 FlashBuilder 多次清理项目以使其更新配置文件。
下面列出了经过提炼的工作“重新编译”。您需要替换或声明 FLEX_HOME 和 release_build 的变量
先指定已签名的 RSL,然后再进行故障转移,必须设置 -use-network=false 才能在本地测试,否则播放器会抛出 Flash 安全错误
mxmlc -use-network=false \
-runtime-shared-library-path=$FLEX_HOME/frameworks/libs/framework.swc,framework_$release_build.swz,,framework_$release_build.swf \
-runtime-shared-library-path+= $FLEX_HOME/frameworks/libs/textLayout.swc,textLayout_1.1.0.604.swz,,textLayout_1.1.0.604.swf \
-runtime-shared-library-path+=$FLEX_HOME/frameworks/libs/spark.swc,spark_$ release_build.swz,,spark_$release_build.swf \
-debug=true $fullfile -output ../cmd-bin-debug/$filename.swf
哦,这是将 RSL 复制到输出路径的便捷命令: find $FLEX_HOME/frameworks/rsls ( -name ' .swf' -o -name ' .swz' ) -exec cp {} ../cmd-bin -调试\;