actionscript-3flex3mxmlc

MXMLC Incremental compilation not working


Google shows a couple of hits for this issue, but never a solution that I can find. It's always just a few other people saying "it works for me", and the issue dries up. I've tested both with the "-incremental=true" flag to mxmlc and with the <incremental>true</incremental> tag in my flex config.xml with the same result:

Failed to match the compile target with /export/vampire/build/Editor.swf.cache. The cache file will not be reused.

I get this on each compile after the first that creates the cache, whether the source files were modified or not.

I've checked file permissions (not expecting anything - the cache file and the swf it's checking against were both created by MXMLC to begin with):

-rw-rw-r-- 1 nathan nathan 3181508 2009-07-15 17:50 Editor.swf
-rw-rw-r-- 1 nathan nathan 5756512 2009-07-15 17:50 Editor.swf.cache

$ flex_sdk/bin/mxmlc -version
Version 3.3.0 build 4852

$ uname -a
Linux sargasso 2.6.24-19-generic #1 SMP Fri Jul 11 23:41:49 UTC 2008 i686 GNU/Linux

Ubuntu 8.04

Solution

  • It looks like the "Failed to match compile target" error is being caused by an updated timestamp on the flex config file. Even if the config file is unmodified, mxmlc will throw out the old compile cache and recompile everything as long as the timestamp is newer than that on the cache file. This misleading error message is all the info you get.