Sunday, November 21, 2010

Install Sun/Oracle Java JDK/JRE 6 on Fedora 14/13, CentOS/RHEL 5.5/6

java-logoThis guide is updated/rewritten Jul 29, 2010 to use currently latest Sun/Oracle Java JDK and JRE 6 Update 22 and I added also separated 32-bit and 64-bit installation instructions.
By default, Fedora 14, Fedora 13, Fedora 12, CentOS 5.5 and Red Hat (RHEL) 5.5/6 Linux operating systems use the OpenJDK Java, which is a good choice for normal use and it works with almost all the Java programs normally. OpenJDK is also easy to install and maintain with YUM package management, but some cases, Sun/Oracle Java installation is necessary, for example, if some program have to compile with Sun/Oracle Java or a particular program does not work without Sun/Oracle Java.

Install Sun/Oracle Java JDK (Java Development Kit)/JRE (Java Runtime Environment) 6u22 on Fedora 14, Fedora 13, Fedora 12, CentOS 5.5, Red Hat (RHEL) 5.5 and Red Hat (RHEL) 6

1. Download Sun/Oracle Java JDK or JRE RPMs

Download Sun/Oracle Java JDK or JRE from here (current version is JDK 6 Update 22) http://www.oracle.com/technetwork/java/javase/downloads/index.html.
Note: Select rpm.bin package (example jdk-6u22-linux-i586-rpm.bin, jre-6u22-linux-i586-rpm.bin, jdk-6u22-linux-x64-rpm.bin or jre-6u22-linux-x64-rpm.bin).

2. Change to root user.

sudo -i
## OR ##
su -

3a. Run Sun/Oracle Java JDK binary

chmod +x /path/to/file/jdk-6u22-linux-*-rpm.bin
/path/to/binary/jdk-6u22-linux-*-rpm.bin
 
## OR ##
 
sh /path/to/binary/jdk-6u22-linux-*-rpm.bin
Note: Use full file name (without asterix) if you have both i586 and x64 versions downloaded.

3b. Run Sun/Oracle Java JRE binary

chmod +x /path/to/file/jre-6u22-linux-*-rpm.bin
/path/to/binary/jre-6u22-linux-*-rpm.bin
 
## OR ##
 
sh /path/to/binary/jre-6u22-linux-*-rpm.bin
Note: Use full file name (without asterix) if you have both i586 and x64 versions downloaded.

4a. Install Sun/Oracle JDK java, javaws, libjavaplugin.so (for Firefox/Mozilla) and javac with alternatives –install command

## java ##
alternatives --install /usr/bin/java java /usr/java/jdk1.6.0_22/jre/bin/java 20000
## javaws (32-bit only) ##
alternatives --install /usr/bin/javaws javaws /usr/java/jdk1.6.0_22/jre/bin/javaws 20000
 
## Java Browser (Mozilla) Plugin 32-bit ##
alternatives --install /usr/lib/mozilla/plugins/libjavaplugin.so libjavaplugin.so /usr/java/jdk1.6.0_22/jre/lib/i386/libnpjp2.so 20000
 
## Java Browser (Mozilla) Plugin 64-bit ##
alternatives --install /usr/lib64/mozilla/plugins/libjavaplugin.so libjavaplugin.so.x86_64 /usr/java/jdk1.6.0_22/jre/lib/amd64/libnpjp2.so 20000
 
## Install javac only if you installed JDK (Java Development Kit) package ##
alternatives --install /usr/bin/javac javac /usr/java/jdk1.6.0_22/bin/javac 20000

4b. Install Sun/Oracle JRE java, javaws and libjavaplugin.so (for Firefox/Mozilla) with alternatives –install command

## java ##
alternatives --install /usr/bin/java java /usr/java/jre1.6.0_22/bin/java 20000
 
## javaws (32-bit only) ##
alternatives --install /usr/bin/javaws javaws /usr/java/jre1.6.0_22/bin/javaws 20000
 
## Java Browser (Mozilla) Plugin 32-bit ##
alternatives --install /usr/lib/mozilla/plugins/libjavaplugin.so libjavaplugin.so /usr/java/jre1.6.0_22/lib/i386/libnpjp2.so 20000
 
## Java Browser (Mozilla) Plugin 64-bit ##
alternatives --install /usr/lib64/mozilla/plugins/libjavaplugin.so libjavaplugin.so.x86_64 /usr/java/jre1.6.0_22/lib/amd64/libnpjp2.so 20000

5. Check current java, javac, javaws and libjavaplugin.so versions

java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) Client VM (build 17.1-b03, mixed mode, sharing)
 
javac -version
javac 1.6.0_22
 
javaws
Java(TM) Web Start 1.6.0_22
[...]
Note: Check libjavaplugin.so with restarting Mozilla Firefox and writing about:plugins on address bar.
Check Sun Java Vrowser Plugin Installed on Firefox

6. Swap between OpenJDK and Sun/Oracle JDK versions

alternatives --config java   # or javac or javaws or libjavaplugin.so
There are 4 programs which provide 'java'.
 
  Selection    Command
-----------------------------------------------
   1           /usr/lib/jvm/jre-1.6.0-openjdk/bin/java
   2           /usr/lib/jvm/jre-1.5.0-gcj/bin/java
*  3           /usr/java/jdk1.6.0_18/jre/bin/java
 + 4           /usr/java/jdk1.6.0_22/jre/bin/java
 
Enter to keep the current selection[+], or type selection number:
Note: java with [+] is currently on use

Post-Installation Setup

Add JAVA_HOME environment variable to /etc/profile file or $HOME/.bash_profile file
## export JAVA_HOME
export JAVA_HOME="/usr/java/jdk1.6.0_22"

No comments:

Post a Comment