转自http://www.lsychina.com/howto_install_oracle-jdk_replace_openjdk_on_linux.html
众所周知,由于Oracle公司的JDK的版权问题,大多数Linux发行版在安装时都会附带开源的无版权问题的OpenJDK,以支持某些java程序软件。但是如果我们在Linux下做一些java语言的开发,很可能还是需要安装和使用Oracle公司的原版JDK(以下简称“JDK”)。如何安装JDK并替换掉OpenJDK呢?今天旸仔做一个详细的解答:
毋庸置疑,如果一个系统内同时存在一个以上的jdk,是会造成一些困扰和混乱的。然而,如果卸载删除系统自带的openjdk,又会引起其它一些软件的依赖性问题,即如果卸载openjdk需要连同卸载其它所有依赖于openjdk的软件,例如OpenOffice/LibreOffice。这样子做是不可能滴。所以我们只能在不删除openjdk的情况下安装jdk,再通过一些环境变量的设置来“替换”掉原本的openjdk。
开始之前,我们先通过java -version
命令查看一下当前系统java版本:
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.9) (rhel-1.57.1.11.9.el6_4-i386)
OpenJDK Server VM (build 20.0-b12, mixed mode)
可见,当前系统中使用的是1.6版本的openjdk,下面我们就开始安装1.7版本的jdk。
首先当然是去Oracle官方网站下载jdk安装包,笔者下载的是jdk-7u10-linux-i586.rpm。下载来后,通过以下命令进行安装:
[root@localhost ~]# rpm -ivh jdk-7u10-linux-i586.rpm
接下来是最关键配置部分,修改环境变量配置文件/etc/profile,在文件末尾加入以下几行信息:(其中JAVA_HOME=/usr/java/******,为jdk实际安装路径)
export JAVA_HOME=/usr/java/jdk1.7.0_10
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
这样我们就设置好jdk了,最后一步,是修改默认的jdk。即设置java和javac的符号连接,这是把默认的openjdk1.6改成刚新装的jdk1.7。通过以下两条命令即可完成:
[root@localhost ~]# cd /usr/bin/
[root@localhost bin]# ln -s -f /usr/java/jdk1.7.0_10/jre/bin/java
[root@localhost bin]# ln -s -f /usr/java/jdk1.7.0_10/bin/javac
最后,检测一下更改是否已经成功。再执行命令java -version
,笔者的显示如下内容:
java version "1.7.0_10"
Java(TM) SE Runtime Environment (build 1.7.0_10-b18)
Java HotSpot(TM) Server VM (build 23.6-b04, mixed mode)
可见与安装之前的openjdk显示已经不同,安装配置成功了!