Skip navigation
UglyStudios
Currently Being Moderated

Error Compiling AIR for IOS apps

Mar 11, 2013 6:03 AM

Tags: #air #ios #flashcs6 #compilation_failed

I am getting the following error when trying to compile AIR for IOS apps.

 

Error occurred during initialization of VM

Could not reserve enough space for object heap

Could not create the Java virtual machine

Compilation failed while executing : ADT

 

I had successfully been making AIR for IOS apps without a problem,

now this error has started appearing whenever I try to compile any of my AIR for IOS projcets.

 

I am using Flash Prfessional CS6 version 12.0.2.529

AIR 3.4

 

on Windows 7 Home Premium SP1 64-Bit

Core i& 2.2GHz

6GB RAM

 

Flash is up to date

Java is up to date.

 

I have recreated the Flash Professional preferences and that did not help.

 

From previous posts about this kind of error that I have managed to find online, people say that it is to do with having big FLA files in FLash CS5.5.

My FLA files are only just over 10MB and the swfs produced about 1.5MB.

 

Here is a screen shot

error2.jpg

I have read that you can run comand line scripts to compile your .ipa files,

but I would like to use the complier within Flash.

 

Thanks, Simon

 
Replies
  • Currently Being Moderated
    Mar 11, 2013 3:12 PM   in reply to UglyStudios

    You should update to at least AIR 3.6 if you want the latest iOS compatability. 3.4 took a nose dive for me until I overlayed that. You're using 3.4 so you're familiar with the overlay process correct?

     

    http://www.adobe.com/devnet/air/air-sdk-download.html

     

    The command line process isn't hard once you've done it a few times but it sure is a pain compared to just pressing publish. The main issue is the CS5.5 publish interface does not understand things like localized app names and descriptions. This requires you to edit the XML yourself to verify all the settings are correct. You should make yourself very comfortable editing the apps XML descriptor.

     

    As for heap allocation, worst case scenario you can try increasing your java Xmx for a bit more RAM but this is very uncommon. You'd edit the Xmx value in this file:

     

    [YourUserFolder]\AppData\Local\Adobe\Flash CS5.5\en_US\Configuration\ActionScript 3.0\jvm.ini

     

    You can try increasing the default 128m to 256m, you have enough RAM to do it. This is really a last ditch effort though, you shouldn't need to do this, your app isn't big at all.

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 12, 2013 10:18 AM   in reply to UglyStudios

    Ah, I scanned the post quick and saw CS5.5 above the screenshot. CS6 should be just about the same. Xmx is the same between both (it's for adt). It allocates RAM during compiling.

     

    Does this happen if you open a brand new AIR for iOS project? If not it could be one pesky corrupt library element. With that new project still open, copy all your library assets into it and just try to export again. If it errors, remove library items a little bit at a time, remembering what you remove each time, trying to export. Narrow down and find which item is giving you issues. It might be as simple as re-importing a corrupt graphic. It happens..

     

    Otherwise you don't need more RAM at all for this. I run an old first generation i7 lappie with 4GB RAM exported projects several hundred megs.

     

    I see you have some runtime shared library warnings. Are you trying to exclude them or did you want to merge those? If you wanted to merge you should go to each of them, open the info for them and change from the default "externally link" to the merge into code option and those RSL errors will go away and your library will compile into your project.

     

    Does this project have a lot of external assets, media, 3D? What's the nature of the app?

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 16, 2013 6:12 AM   in reply to UglyStudios

    If you can take this exact project and compile on a different computer then you've already narrowed it down to a problem on your system.

     

    The error you have is decidedly a Java related issue. Flash just isn't able to utilize the compiler, the Java heap is dieing. Are you getting an error as soon as you start flash about Java not being able to start? If so then someone has already messed with your Xmx value which should be between 128-256. I've gone as high as 384 but after that, even with 32GB workstations I can't get 512 to work. Most likely because it's multiplied by 8 and CS5.5 is a 32bit app. If you set that too high the VM will fail to start during Flash startup and will continue to die during export. You should check for any Xmx/Xms values set and adjust them within range if needed or post what they are here.

     

    Uninstalling Java Runtime Environment/Reinstalling/Updating and repointing toward it would be a good idea. Also make sure there aren't any Windows environment path settings for Java to some outdated JRE install. To do that just click start and type 'envir' and in the list it will say "Edit the system environment variables", select that. At the bottom of the panel click Environment Variables. In the bottom System variables box find the "Path" variable and double-click on the value of it. It's a huge string so it's easiest to just copy it all, open notepad (or any text editor) and paste it in. You'll probably see some Adobe paths in there, beware of any outdated software in there, especially pointing toward a sdk's bin folder. (I just found I never repointed my FlashBuilder 4.6 to 4.7 for example)

     

    I still use CS5.5 myself and what I find errors me all the time is needing to set the file destinations every single time I open the app. Even if I use a relative path I find for some reason the IDE is not actually pointing my files where I expect. It's burned into my workflow that as soon as I open the project I open publish, set the SWF export destination, open AIR publish settings and set the IPA destination, lastly going into the distribution tab and re-pointing to the correct .p12 cert and mobileprovision. If I don't explicitly do this every time I get all sorts of errors.

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points