日期:2014-05-16  浏览次数:20873 次

linux 系统java(jdk)升级安装

以系统linux 的centos5.2为例子,介绍jdk升级安装
升级主要是改一下JAVA_HOME和CLASSPATH和PATH的路径,下面是具体的过程!

下载
选择最新的版本,下载地址:http://java.sun.com/javase/downloads/widget/jdk6.jsp
有以下两个二进制文件

?
? Java SE Development Kit 6u18
?jdk-6u18-linux-x64-rpm.bin
76.62 MB
? Java SE Development Kit 6u18
?jdk-6u18-linux-x64.bin
80.87 MB

?

运行二进制文件:

????./jdk-6u18-linux-x64-rpm.bin?或?./jdk-6u18-linux-x64.bin

?

?

区别在于:生成rpm包和源包,rpm包用命令rpm –ivh?jdk-6u18-linux-i586-rpm.bin就会自动安装在/usr/java下,而./jdk-6u18-linux-i586.bin生成的jdk1.6.0_18文件夹需要手动放到/usr/java或者其它自定义目录下。

?

本例子选择后一种方式安装,在/usr下新建java文件夹,把jdk-6u18-linux-x64.bin复制到/usr/java,进入/usr/java,执行权限

?

chmod +x??dk-6u18-linux-x64.bin

执行安装命令

./dk-6u18-linux-x64.bin

?

注意:在根目录下安装!安装成功会在/usr目录下生成jdk1.6.0_18目录,就是jdk的安装目录。

?

JDK安装配置(测试环境CentOS):

?

使用java –version?命令测当前系统已安装的JDK版本,如果安装安装系统时选中了JAVA开发则会安装JDK1.4,因此需要把老版本JDK1.4删除。

使用rpm -qa|grep jdk及rpm -qa|grep gcj命令检测当前安装的JDK版本号,之后根据显示的版本使用命令yum –y jdk,回车后自动删除当前安装的JDK,此时再使用java –version检测时会出现-bash: /usr/bin/java: No such file or directory,检测完之后就可以安装新JDK。

?

当然,可以也可以不按照上面的要求进行配置,下面会有具体的介绍!

?

?

配置有两种选择:

1、直接编辑/etc/profile文件(在文件最后编辑)。

2、在/etc/profile.d目录下新建一个文件。?????????????????????????????????????????????????????????????????????????

设置环境变量内容如下:

?

?

?????????#set java

?????????JAVA_HOME=/usr/java/jdk1.6.0_18

?????????PATH=$PATH:/$JAVA_HOME/bin

?????????CLASSPATH=.:$JAVA_HOME/lib

?????????JRE_HOME=$JAVA_HOME/jre

?????????export JAVA_HOME PATH CLASSPATH JRE_HOME

?

????注:/usr/java/jdk1.6.0_18也就是JDK的路径。

本例子采用地一种配置;

vi?/etc/profile, 在文件最后添加一下内容:

?

#set java

?????????JAVA_HOME=/usr/java/jdk1.6.0_18

?????????PATH=$PATH:/$JAVA_HOME/bin

?????????CLASSPATH=.:$JAVA_HOME/lib

?????????JRE_HOME=$JAVA_HOME/jre

?????????export JAVA_HOME PATH CLASSPATH JRE_HOME

保存并退出,运行# source /etc/profile,立即生效(疑问:若只是为了source命令一下,放在哪里应该都不影响吧?)

?

设置java和javac的符号连接

?????????

查找java位置:

??????????????$ which java

?????????????/usr/bin/java
??????????然后?mv??/usr/bin/java???/usr/bin/java.bak(把原有的java版本替换为java.bak)

?

??????????ln -s -f /usr/java/jdk1.6.0_18/jre/bin/java???/usr/bin/java(我这里使用的不是jre里的bin

??????????ln -s -f /usr/java/jdk1.6.0_18/jre/bin/javac????/usr/bin/javac(我这里使用的不是jre里的bin

?

??????????执行java –version后将会看到新安装的JDK版本号。

$ java -version
java version "1.6.0_18"
Java(TM) SE Runtime Environment (build 1.6.0_18-b07)
Java HotSpot(TM) 64-Bit Server VM (build 16.0-b13, mixed mode)

升级成功!

?

参考资料:http://xiaopihai.javaeye.com/blog/584196

?????????????????http://wubolu.javaeye.com/blog/575830