Titanium Community Questions & Answer Archive

We felt that 6+ years of knowledge should not die so this is the Titanium Community Questions & Answer Archive

Error Compiling KitchenSink to Android Emulator

I can't get the KitchenSink app to compile. Here's what I have on my machine:

Windows 7 64-bit

Latest Android SDK

  • Android 1.1 API Level 2
  • Android 1.6 API Level 4
  • Android 2.0 API Level 5
  • Android 2.1-update1 API Level 7
  • Android 2.2 API Level 8


  • java version "1.6.0_20"
  • Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
  • Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode, sharing)

    Log Output

    Here is the output when I try to build and run in an emulator with Titanium Developer 1.2.1 against Android "APIs 1.6":

Log Output on Pastebin.com

important part:

  • C:\ProgramData\Titanium\mobilesdk\win32\1.4.0\android\modules\titanium-yahoo.jar
  • [ERROR] System Error while compiling Android classes.dex
  • [ERROR] C:\jdk1.6.0_16\bin\java.exe
  • [TRACE] java.lang.OutOfMemoryError: GC overhead limit exceeded
  • [TRACE] at com.android.dx.util.FixedSizeList.<init>(FixedSizeList.java:38)

Let me know if you have any ideas what I might be doing wrong. I tried building against 2.2, APIs 2.2, etc… and I'm getting the same issue.

I realize other people have posted on similar issues like this, but I still can't seem to fix it. This is kind of a show stopped in terms of using Appcelerator, because I can't actually learn how it works without running the KitchenSink app.


— asked August 21st 2010 by Dave Morris
  • android
  • kitchensink

4 Answers

  • I found this post on the forum: http://developer.appcelerator.com/question/50491/where-do-i-put–xmx-option-garbage-collector-setting-androidjava

    And changing the Xmx option to 1024m seems to have fixed my problem. I'm wondering why no one else has run into this issue, though. The memory usage seems to spike during the creation of the titanium-yahoo.jar file.

    Anyways, it's working now, and hopefully in the future the memory setting can be extract out as a setting in Titanium Developer rather than being hard coded in builder.py.


    — answered August 21st 2010 by Dave Morris
  • I've been at it on-and-off for several days trying to get the KitchenSink app to run. Tried several of the suggestions here, and the final one before I finally got KS up was changing the memory setting mentioned above in builder.py - but that alone didn't get it done.

    Other steps I took to get the KS app up. Started the SDK Setup, and deleted all the Virtual Devices. From within the Titanium Developer environment, launched the emulator - and in spite of several errors, the emulator eventually came up. Then with the emulator up, I hit the launch button again, and the app came up. There was a error with the emulator that put up an alert offering a single "Force Close" that I left up. Eventually the app came up behind the alert, and once I clicked on "Force Close" the app remained up.

    Not pretty, and makes me think harder about other platforms, or developing on a different OS. If it gets easier after this, or I figure out what the secret is, I'll update this.

    — answered August 31st 2010 by Indy Astleford
  • I got bitten by this too - KitchenSink doesn't build for Android on Windows x64 - which is odd seeing as surely Q&A would test this scenario before any release.

    Why isn't the memory limit set according to system physical memory rather than some arbitrary fixed limit? In python it's extremely easy to pull current free memory.

    Anyway the fix works as advertised, and thanks to the posters above for posting it.


    — answered September 1st 2010 by Niall Douglas
  • Same problem for me on Windows 7 64 bit. This fix worked. Thanks.

    — answered November 29th 2010 by Mel Bradley
The ownership of individual contributions to this community generated content is retained by the authors of their contributions.
All trademarks remain the property of the respective owner.