Sept. 3, 2009, 11:24 p.m.
IT

Java on Snow Leopard / Lion

So if you are like me and eager to get the latest and greatest from Cupertino on your Mac Pro, you will be severely disappointed if you do any Java development that requires an older JVM than 1.6.

See, Apple symlinked all older folders to 1.6:

drwxr-xr-x 11 root wheel 374 28 Aug 21:09 .
drwxr-xr-x 12 root wheel 408 28 Aug 21:36 ..
lrwxr-xr-x 1 root wheel 5 28 Aug 21:09 1.3 -> 1.3.1
drwxr-xr-x 3 root wheel 102 20 Jul 16:35 1.3.1
lrwxr-xr-x 1 root wheel 10 28 Aug 21:09 1.5 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 28 Aug 21:09 1.5.0 -> CurrentJDK
lrwxr-xr-x 1 root wheel 5 28 Aug 21:09 1.6 -> 1.6.0
drwxr-xr-x 8 root wheel 272 28 Aug 21:36 1.6.0
drwxr-xr-x 9 root wheel 306 28 Aug 21:36 A
lrwxr-xr-x 1 root wheel 1 28 Aug 21:09 Current -> A
lrwxr-xr-x 1 root wheel 3 28 Aug 21:09 CurrentJDK -> 1.6

If code depends on a specific Java version then you need to follow these steps: Installing Old Java on Snow Leopard. Nice going Apple! Almost as bad as the PHP 5.3.0 upgrade - neither Drupal nor Joomla! works on PHP 5.3. They require 5.2.x.

Steps reproduced below:

cd /tmp/
curl -L -o java.1.5.0-leopard.tar.gz http://www.cs.washington.edu/homes/isdal/snow_leopard_workaround/java.1.5.0-leopard.tar.gz
tar -xvzf java.1.5.0-leopard.tar.gz
sudo mv 1.5.0 /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0-leopard
cd /System/Library/Frameworks/JavaVM.framework/Versions/
sudo rm 1.5.0
sudo ln -s 1.5.0-leopard 1.5.0
sudo rm 1.5
sudo ln -s 1.5.0 1.5