Although some people don’t agree, I think there’s value in reposting technical tips for a few reasons.
First, I post content for my own information and reference. I’m not the only one who does this (e.g. @oraclenerd), and I’m not the only one who finds it useful as a personal history. Second, I find tons of helpful technical tips and information from the Google, and thanks to SEO, blogs tend to rise to the top. Finally, the intertubes is a big place, and I frequently remember where I read something memorable and use that as placeholder later to focus a search.
To the content. Marc Chanliau (@sysconmedia) posted instructions for installing JDeveloper on OS X Lion over on Shay Shmeltzer’s (@jdevshay) blog back in August. He did the same for earlier versions of OS X, so if you’re not on Lion yet, check out the older instructions.
In Lion, Apple stopped including the JDK as part of the OS, but you probably already knew that and already accounted for it. For the uninitiated, you need the JDK before you continue. So, open the Terminal and type:
If you don’t have it, OS X will prompt you to download and install.
The instructions are very easy to follow. Marc’s script didn’t work for me, but it did help me find the path to the Java home. The steps are below, and if you’re feeling charitable, hit this link and show Shay and Marc some love. Thanks guys.
(1) Download JDeveloper from here to your desktop. (Choose the *generic* Studio Edition from the pull-down menu.)
(2) Double-click on the package you just downloaded, which should be jdevstudio1112Oinstall.jar. Be patient because it may take a few moments for the first screen of the JDev Installer to come up.
(3) Follow the Installer’s step. The tricky part is when you get prompted for providing the path to you local JDK. When you get there, just follow step (4) below.
(4) To make it easy for the JDev Installer to find the all Java libs it’s looking for, you need to run the following bash script. Just copy the script below in a text editor and save the file as jdev_on_lion.sh (or any other name.sh you choose). Here is the bash script:
ln -s /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/bin/java /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/bin/java
ln -s /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/bin/javac /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/bin/javac
ln -s /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/bin/javap /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/bin/javap
ln -s /System/Library/Java/Support/Deploy.bundle/Contents/Home/bin/javaws /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/bin/javaws
ln -s /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/bin/jar /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/bin/jar
ln -s /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/bin/xjc /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/bin/xjc mkdir /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/lib
ln -s /system/library/java/javavirtualmachines/1.6.0.jdk/contents/classes/classes.jar /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/lib/tools.jar
mkdir /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/jre mkdir /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/jre/bin
ln -s /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/bin/java /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/jre/bin/java mkdir /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/jre/lib
ln -s /system/library/java/javavirtualmachines/1.6.0.jdk/contents/classes/classes.jar /system/library/java/javavirtualmachines/1.6.0.jdk/contents/home/jdk6/jre/lib/rt.jar
(5) Now that you’ve saved the script as described in step (4), you need to run it. Before running it, however, you need to change the file access permissions by entering the following command at a terminal prompt: chmod +x jdev_on_lion.sh
(6) You’re ready to run the script. Enter the following command at a terminal prompt: ./jdev_on_lion.sh (if the bash shell complains that some permissions are (still) denied, just enter the command preceding it with “sudo” (you’ll be required to enter your Mac password), that will always work!)
(7) Now you should see the JDK’s path automatically entered in the JDev install screen.
(8) You just need to follow the remaining JDev Installer steps to complete installation.