Release Builld removes metadata from RSL-s even with -keep-as3-metadata

reider's Avatar


09 Nov, 2010 09:27 PM

I had a little almost 2 day fun with Flash Builder 4 AIR and the release build.
It turns out that the release build will recompile all added RSL libs removing Robotlegs metadata so the AIR application will not work even if you add the -keep-as3-metadata to the compiler options.

My project looks like:
-Shared libs with robotlegs src code
-Main loader Application using shared libs as RLS
-Module using shared libs as RLS external, building itself to main app bin folder for loading

When debugging or running in the Builder it works just fine when exporting a release build to an AIR package the RSL-s are recompiled by the builder and stripped from the metadata and the Robotlegs app will throw null reference errors.

I've tried different tings to make the code work with RSL-s added -keep-as3-metadata+=... to all projects modified the air-config.xml, flex-config.xml but no luck it seems that there is no way to configure the realase build process.
The only solution is to merge the shared libraries into all projects but that will result to duplicate definitions in the module.

If anyone had a similar problem or has some ideas I'm really interested. The main goal is to create a release version .air file that has a shared RSL with compiled metadata.

  1. 1 Posted by Stray on 09 Nov, 2010 09:35 PM

    Stray's Avatar

    mxmlc compiler through command line is what I use - once you've got a build script that works it's easy to repeat using rake for ruby. Hopefully there is a more user friendly way that someone else knows, but otherwise it's not that difficult because you can start from what flash builder is doing and just add your metadata back in.


  2. Stray closed this discussion on 10 Feb, 2011 06:09 PM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts


? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac