2013年6月29日星期六

CentOS卸载OpenJDK并安装官方的JDK(测试过方法可行)


        

第一步:查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4)
安装好的CentOS会自带OpenJdk,用命令 java -version ,会有下面的信息:
java version "1.6.0"
OpenJDK  Runtime Environment (build 1.6.0-b09)
OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode)
最好还是先卸载掉openjdk,再安装sun公司的jdk.
先查看 rpm -qa | grep java
显示如下信息:
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
.....
卸载:
rpm -e --nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

     后面<1><2><3>可以省略 

     <1># rpm -qa|grep jdk                ← 查看jdk的信息或直接执行
       
        # rpm -q jdk
       
        # java -version
     <2># rpm -qa | grep gcj                ← 确认gcj的版本号
     <3># yum -y remove java-1.4.2-gcj-compat        ← 卸载gcj

第二步:安装JDK
    <1>从SUN下载jdk-7u5-linux-x64.rpm
     官方网址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
       在/usr下新建java文件夹,将安装包放在/usr/java目录下
       # mkdir /usr/java
    <2>安装JDK
       # cd /usr/java
       # rpm -ivh jdk-7u5-linux-x64.rpm      
 
第三步:配置环境变量
    <1># vi /etc/profile
    <2>在最后加入以下几行:
           export JAVA_HOME=/usr/java/jdk1.7.0_05
           export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
           export PATH=$PATH:$JAVA_HOME/bin
    <3># reboot     ← 重启机器配置生效           或者 # source /etc/profile
第四步:测试新的JDK是否生效
编辑一个JAVA文件test.java,内容如下:
public class test {
    public static void main(String args[]) {
        System.out.println("A new jdk test !");
    }
}
编译test.java   # javac test.java
运行test.class  # java test
结果:A new jdk test !
查看版本:
# java -version
java version "1.7.0_05"
Java(TM) SE Runtime Environment (build 1.7.0_05-b06)
Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode)


可能的错误:
问题描述:
执行jar命令,javac命令执行报错
javac: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory
jar: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory
[root@as bin]# jps
jps: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory
解决方案:
rm -rf /usr/bin/javac
rm -rf /usr/bin/jar
然后建立软链
ln -s /usr/java/jdk1.7.0_05/bin/javac /usr/bin/javac
ln -s /usr/java/jdk1.7.0_05/bin/jar /usr/bin/jar

rm -rf /usr/bin/jps
ln -s /usr/java/jdk1.7.0_05/bin/jps /usr/bin/jps

分析原因:
原来安装的时候,安装了openjdk,卸载的时候可能这些执行文件没卸载掉.
导致不能使用.
所以将/usr/bin/下的老执行文件删除掉就能执行了.

查找libjli.so文件
find / -name libjli.so







没有评论:

发表评论