Wednesday, November 03, 2010

Mac OS X Java Update breakage.

I just knew I shouldn't have let Mac OS X apply the recent Java update. Just a couple of days after the update I had reason to upgrade the rjb ('Ruby Java Bridge') gem. The upgrade process exploded in my face with the following error:

checking for jni.h... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.

The problem appears to be missing Java supporting sources that the most recent Java update removed. Luckily, I found the solution over at the nicely named Kick me in the nuts blog. For your convenience here are the magic incantations:

Step 1: Go to http://connect.apple.com and download and download Java for Mac OS X 10.6 Update 3 Developer Package. You'll need a registered Apple Developer account, but it's free.

Step 2: Install it.

Step 3: Open a Terminal.app window and type:

sudo -s
cd /System/Library/Frameworks/JavaVM.framework/Home
ln -s /Library/Java/JavaVirtualMachines/1.6.0_22-b04-307.jdk/Contents/Home/src.jar .
ln -s /Library/Java/JavaVirtualMachines/1.6.0_22-b04-307.jdk/Contents/Home/docs.jar .

After the above, developer calm should be restored.

No comments: