Ubuntu下安装多个Java及切换

前端之家收集整理的这篇文章主要介绍了Ubuntu下安装多个Java及切换前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

有时为了需要,会在系统中安装多个Java。网上关于这个问题的解决都是同一种思路,即利用sudo update-alternatives进行配置。

我这里也是使用这种方法,只是编写了一个脚本,使得操作起来方便一些。

多个Java的安装

我是在Oracle上下载的压缩包进行解压的。解压完成之后,我们需要将其配置到系统当中,如下

install_java.sh

#!/bin/bash 
if [ $# -eq 0 ]
  then
    echo "Provide the jdk path to be installed!"
    exit
fi

if [ ! -e "${1}" ]
  then
    echo "Provided jdk: ${1} does not exist!"
    exit
fi

JDK_PATH=${1}
INSTALL_PRIORITY=300

# Remove last '/'
if [ ${1:0-1:1} = '/' ]
  then
    JDK_PATH=${1%/*}
fi

if [ $# -gt 1 ]
  then
    INSTALL_PRIORITY=${2}
fi

echo "You specify jdk: ${JDK_PATH}"

sudo update-alternatives --install /usr/bin/java java ${JDK_PATH}/bin/java ${INSTALL_PRIORITY}
sudo update-alternatives --install /usr/bin/javac javac ${JDK_PATH}/bin/javac ${INSTALL_PRIORITY}
sudo update-alternatives --install /usr/bin/javah javah ${JDK_PATH}/bin/javah ${INSTALL_PRIORITY}
sudo update-alternatives --install /usr/bin/javaws javaws ${JDK_PATH}/bin/javaws ${INSTALL_PRIORITY}
sudo update-alternatives --install /usr/bin/javap javap ${JDK_PATH}/bin/javap ${INSTALL_PRIORITY}

这个脚本有2个参数:
1. jdk的路径(必须)
2. 安装此jdk的priority(可选,默认是300)

Java版本切换

网上介绍的方法是使用update-alternatives --config命令,对上边安装的java,javac…等进行一一配置,选取哪一个jdk为默认的。

其实我们可以借助于安装时的priority来达到这个目的,这个值是越大越优先,所以我们在使用install_java.sh时只需要将第二个参数指定为一个比较大的数字(大于目前所存在的jdk的priority)就可以将当前安装的jdk设置为默认选中的

删除安装的Java

附上如何删除的脚本
remove_java.sh

#!/bin/bash 
if [ $# -eq 0 ]
  then
    echo "Provide the jdk path to be removed!"
    exit
fi

if [ ! -e "${1}" ]
  then
    echo "Provided jdk: ${1} does not exist!"
    exit
fi

JDK_PATH=${1}

sudo update-alternatives --remove java ${JDK_PATH}/bin/java
sudo update-alternatives --remove javac ${JDK_PATH}/bin/javac
sudo update-alternatives --remove javah ${JDK_PATH}/bin/javah
sudo update-alternatives --remove javaws ${JDK_PATH}/bin/javaws
sudo update-alternatives --remove javap ${JDK_PATH}/bin/javap

参考

  1. Ubuntu 下 Java 版本的切换
  2. shell截取字符串的方法
  3. Shell脚本8种字符串截取方法总结
原文链接:https://www.f2er.com/ubuntu/354740.html

猜你在找的Ubuntu相关文章