Tip: Installing JDeveloper on Mac OS
By user12611203 on Feb 08, 2010
Having gone through this a couple times now, I wanted to capture a couple tips that make JDeveloper installation easy for MacOS X users. The installation itself is very simple: a '
java -jar ' does it all. But there is one helpful and one mandatory step you should take first. Thanks go to Steve DiMilla for trying these steps as well.1. Set JAVA_HOME in your environment
While not really necessary (AFAIK), your life may be easier if you do. You can always just export the environment variable in a terminal, but you might as well do it properly and make it available to your whole environment. That way any process running as you has the information available. I've covered this in a previous blog, but here it is again, nice and simple. Assuming you haven't already:
- Create a directory in your home folder called
.MacOSX(note the dot, the capitalization, etc.). - Create a file in that directory called
environment.plist. - Copy the following into your
~/.MacOSX/environment.plistfile:JAVA_HOME /System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home - Log out and log back in.
2. Create an rt.jar link to classes.jar
The installer for JDeveloper expects the Apple JDK to look like other JDKs. Specifically, it's looking for
$JAVA_HOME/jre/lib/rt.jar, which doesn't exist by default. You're going to change that. This information is available as part of the installation insructions (section 6), but they recommend you enable the root user and do the following as root.
(Side note: enabling the root user is different on different versions of MacOS X, so the official instructions may not work for you. Here is Apple's information on enabling root.)
While doing this as root works fine, as long as you have administrative privileges, you can do the same thing withsudo and save yourself a couple steps. Here you go:
cd $JAVA_HOMEsudo mkdir jre(use your login password when prompted)cd jresudo mkdir libcd libsudo ln -s ../../../Classes/classes.jar rt.jar
jar tvf rt.jar' if you'd like.