我试图弄清楚为什么当我使用简单的 ANT 任务编译我的 Flex 4 库 swc 时,它编译的大小大约是 FlashBuilder 编译的 swc 大小的三倍。
这是我的 ANT 脚本来编译我的 swc
<target name="compileSWC" description="compiles the Library">
<echo>Compiling Library SWC To Deploy SWC Folder</echo>
<compc debug="false
output="${bin.dir}/${Library.name}-${timeVersion}.swc"
incremental="true"
optimize="true"
headless-server="true"
verbose-stacktraces="true"
default-frame-rate="24">
<source-path path-element="${src.dir}" />
<include-sources dir="${src.dir}" includes="*"/>
<source-path path-element="${src.dir}" />
<compiler.library-path dir="${basedir}/" append="true">
<include name="${library.dir}" />
</compiler.library-path>
</compc>
<echo>Compiled Library SWC To Deploy SWC Folder</echo>
</target>
这会产生一个 1,980 KB 的 swc。这个库文件有自定义组件、一些皮肤和图像,所以我对文件大小没问题。但是当我使用 FlashBuilder 将我的 Library 项目链接到其他 Flex 项目时,编译后的 swc 只有 532 KB。
我能够将 FlashBuilder 编译的 swc 移动到任何项目中,它工作得很好。
所以我想知道 FlashBuilder 与我的 ANT 构建脚本有什么不同以减小文件大小?我尝试将 'static-link-runtime-shared-libraries="true"' 添加到我的 ANT 脚本中,但结果相同。
谢谢。