如何删除旧版本的Java并安装新版本

Pro*_*mer 14 java linux

我有一个安装了Java 1.7的Linux盒子:

#java -version
java version "1.7.0_09-icedtea"
OpenJDK Runtime Environment (rhel-2.3.4.1.el6_3-x86_64)
OpenJDK 64-Bit Server VM (build 23.2-b09, mixed mode)
Run Code Online (Sandbox Code Playgroud)

但是对于一些新工具我需要安装jdk-8u45-linux-x64.tar.gz

那么如何删除旧的并安装新的呢?

小智 22

  1. 删除OpenJDK(您已安装的那个)

    sudo apt-get purge openjdk-\*

  2. 为新JDK创建一个新目录

    sudo mkdir -p /usr/local/java

  3. 将文件复制到目录(您应该在该文件路径中)

    sudo cp -r jdk-8u45-linux-x64.tar.gz /usr/local/java/

  4. 提取文件

    sudo tar xvzf jdk-8u45-linux-x64.tar.gz

  5. 您现在应该将其添加到PATH中.要做到这一点:

    一个.打开/ etc/profile:sudo gedit /etc/profile

    湾 向下滚动(结束)并添加安装jdk的路径

    JAVA_HOME=/usr/local/java/jdk1.8.0_45 PATH=$PATH:$HOME/bin:$JAVA_HOME/bin export JAVA_HOME export PATH

    保存并退出

  6. 通知您的Linux系统Oracle Java JDK/JRE所在的Linux系统.

    一个.通知系统Oracle Java JRE可供使用

    sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.8.0_45/bin/java" 1

    湾 通知系统Oracle Java JDK可供使用

    sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.8.0_45/bin/javac" 1

    C.通知系统Oracle Java Web Start可供使用

    sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.8.0_20/bin/javaws" 1

  7. 通知您的Linux系统Oracle Java JDK/JRE必须是默认的Java.

    一个.设置系统的Java运行时环境

    sudo update-alternatives --set java /usr/local/java/jdk1.8.0_45/bin/java

    湾 为系统设置javac编译器

    sudo update-alternatives --set javac /usr/local/java/jdk1.8.0_45/bin/javac

    C.为系统设置Java Web start

    sudo update-alternatives --set javaws /usr/local/java/jdk1.8.0_20/bin/javaws

  8. 重新加载系统范围的PATH

    source /etc/profile

  9. 检查新版本,你就完成了!

    java -version

  • 嗯......"apt-get"不适用于RHEL (2认同)

小智 7

只需解压缩新的Java版本,例如/opt.然后做

export JAVA_HOME=/opt/jdk1.8.0_45 
export PATH=$JAVA_HOME/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

将这些exports放入shell的启动文件中,您应该进行设置.没有必要卸载Java 7安装.


Cha*_*att 5

在 Centos/Redhat 上

首先做:rpm -qa|grep jdk 然后:rpm -e <the version which you dont want>