software development for the
existentially challenged
Older | Newer Older | Newer
OS X Java SE 6 Update 4 Breaks Google App Engine Dev Server
comment share
This was driving me nuts: when I started up GAE dev server either on the command line or in Idea, it would start up, maybe deliver one hit, and then exit.

The problem turned out to be the recent OS X Java SE Update 4 causes the JVM to crash under GAE dev server. Fire up Console and after you execute  dev_appserver.sh watch for the crash.

I didn't figure this out -- This thread reveals all:

http://code.google.com/p/googleappengine/issues/detail?id=4712

There are a couple of ways to fix this: grab the latest Open JDK build, or get Apple's Java SE Update 3 and downgrade. I didn't want to mess with Open JDK, so I went for the Apple Update.

The installer won't let you downgrade, so you have to extract the pkg contents and do some symlinking to incorporate them into your system.

I used Pacifist, a handy bit of shareware that lets you do such an extraction. I extracted the package content into a directory outside of /System :

/local/app/jdk6-update-3/
Applications/

Library/
System/
usr/

In /System/Library/Java/JavaVirtualMachines/ symlink to the extracted jvm:

1.6.0.jdk@ -> /local/app/jdk6-update-3/System/Library/Java/JavaVirtualMachines/1.6.0.jdk

(You might want to back up the existing 1.6.0.jdk directory)

In /System/Library/Frameworks/JavaVM.framework/Versions change 2 symlinks:

1.6_update3@ -> 
/local/app/jdk6-update-3/System/Library/Frameworks/JavaVM.framework/Versions/A
And
Current@ -> 1.6_update3

If it all works, you should get this:

java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04-307-10M3326)
Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03-307, mixed mode)

And GAE dev server will work again.

0 comments:

Post a Comment

What is this site?!

t (a professional software developer for a big company) writes about software development and stuff. Unix, Java, Groovy, OS X, and lots of open source libraries and tools.