以系统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