zoukankan      html  css  js  c++  java
  • 使用alternatives切换red hat linux的jdk版本

    第一次接触到Red Hat Enterprise Linux感觉跟之前熟悉的Centos Ubuntu Fedora还是有些差别的,可能是因为环境配置不同吧

    先讲一讲背景吧,我想要在这样的linux服务器上部署一下持续集成的环境,也就是说安装一个tomcat和hudson,很简单的内容。

    但是发现我查看java版本的时候出现了没遇到过的情况。

    This script is a placeholder for the /usr/bin/javac
    master link required by jpackage.org conventions. libgcj's
    rmiregistry, rmic and jar tools are now slave symlinks to these
    masters, and are managed by the alternatives(8) system.

    This change was necessary because the rmiregistry, rmic and jar tools
    installed by previous versions of libgcj conflicted with symlinks
    installed by jpackage.org JVM packages.

    也就是说系统的jdk是由alternatives托管的libgcj,然后我跟踪了一下,找到了服务器上还有几个可以用的JDK目录,所以现在我的任务就是切换alternatives的jdk,让其能够指向可用的原版jdk.

    忘了先介绍一下gcj, GNU Compiler for Java,是GNU的一个开源java编译器,具体的内容可以再到网上搜搜看

    于是我在网上搜了一下,解决了这个问题,步骤为

    1.先将可用的JDK添加到alternatives中:

    [root@eric-laptop sbin]# ./alternatives --install /usr/bin/java java /usr/share/jdk1.6.XXXX/bin/java 300
    [root@eric-laptop sbin]# ./alternatives --install /usr/bin/javac javac /usr/share/jdk1.6.XXXX/bin/javac 300

    2.然后display一下alternatives中可用的jdk列表

    [root@eric-laptop sbin]# ./alternatives --display java
    java - status is manual.
     link currently points to /usr/share/java/libgcj-java-placeholder.sh
    /usr/share/java/libgcj-java-placeholder.sh - priority 100
     slave rmiregistry: /usr/bin/grmiregistry
     slave rmiregistry.1.gz: /usr/share/man/man1/grmiregistry.1.gz
    /usr/share/jdk1.6.XXXX/bin/java - priority 300
     slave rmiregistry: (null)
     slave rmiregistry.1.gz: (null)
    Current `best' version is /usr/share/java/libgcj-java-placeholder.sh.

    [root@eric-laptop sbin]# ./alternatives --display javac

    javac - status is auto.
     link currently points to /usr/share/java/libgcj-javac-placeholder.sh
    /usr/share/java/libgcj-javac-placeholder.sh - priority 100
     slave jar: /usr/bin/gjar
     slave rmic: /usr/bin/grmic
     slave jar.1.gz: /usr/share/man/man1/gjar.1.gz
     slave rmic.1.gz: /usr/share/man/man1/grmic.1.gz
    /usr/share/jdk1.6.XXXX/bin/javac - priority 300
     slave jar: (null)
     slave rmic: (null)
     slave jar.1.gz: (null)
     slave rmic.1.gz: (null)
    Current `best' version is /usr/share/java/libgcj-javac-placeholder.sh.

    3.确认已经将好用的JDK添加到alternatives中后,开始配置alternatives
    [root@eric-laptop sbin]# ./alternatives --config java

    There are 2 programs which provide 'java'.

      Selection    Command
    -----------------------------------------------
    *+ 1           /usr/share/java/libgcj-java-placeholder.sh
       2           /home/webspher/jdk1.6.XXXX/bin/java
    这时候选择2即可更改到新的java中

    同理操作[root@eric-laptop sbin]# ./alternatives --config javac

    操作完之后就可以查看一下java的版本

    java -version了 可以正常使用了

  • 相关阅读:
    藕益大师示念佛法门
    【丁嘉丽老师】最新心得报告——生死无常,好好念佛(视频+文字)
    【视频+文字】刘素云老师:法雨惠群生--老实念佛不拐弯 今生一定到彼岸(附净空老法师点评)
    刘素云老师复讲《无量寿经》第16集
    《认识佛教》有声书-02-净空法师-初学佛课程(音)
    《认识佛教》有声书-01-净空法师-初学佛课程(音)
    【强烈推荐】科注学习班——自了法师分享:珍惜暇满人身宝(上)
    自了法师全集 | 无量寿经科注第四回学习班分享三十篇
    《2014净土大经科注》大汇总
    释自了法师:生死心不切,若真为生死之心不发,一切开示皆为戏论
  • 原文地址:https://www.cnblogs.com/ericsun/p/2376929.html
Copyright © 2011-2022 走看看