当前位置: 首页>>技术问答>>正文


在Ubuntu上将openjdk替换为oracle-jdk

, , ,

问题描述

我有一个ubuntu系统,我想用oracle-jdk替换我的openjdk。

但是,如果我删除我的open-jdk,然后安装oracle-jdk,当我尝试安装一些他们想要安装openjdk的软件包时,我不想这样做。

有没有办法在oracle-jdk之上安装这些软件包?其中一个软件包是freemind。

最佳解决方案

您可以通过以下步骤完全删除OpenJDK和全新安装Oracle Java JDK

  1. 通过以下命令完全删除OpenJDK

    sudo apt-get purge openjdk-\*
    
  2. 下载Oracle Java JDK here。注意:下载相应的文件,例如,如果您的系统是x64 Ubuntu(即Debian),则下载文件的名称如下:jdk-8u51-linux-x64.tar.gz要查找您的操作系统版本,请使用如何检查我是否拥有32位或64位操作系统?

  3. 通过以下命令在/usr/local/中创建名为java的文件夹:

    sudo mkdir -p /usr/local/java
    
  4. 将下载的文件复制到目录/usr/local/java中。为此,将cd放入下载文件所在的目录,并使用此命令将该文件复制到/usr/local/java/

    sudo cp -r jdk-8u51-linux-x64.tar.gz /usr/local/java/
    
  5. 将CD放入/usr/local/java/目录并使用以下命令提取该复制的文件:

    sudo tar xvzf jdk-8u51-linux-x64.tar.gz
    
  6. 提取后,您必须看到名为jdk1.8.0_51的文件夹。

  7. 通过命令sudo nano /etc/profile打开/etc/profile文件更新PATH文件,并将以下内容粘贴到文件的末尾:

    JAVA_HOME=/usr/local/java/jdk1.8.0_51
    PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
    export JAVA_HOME
    export PATH
    
  8. 保存并退出。

  9. 通过以下命令告诉系统新的Oracle Java版本可用:

    sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.8.0_51/bin/java" 1
    sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.8.0_51/bin/javac" 1
    sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.8.0_51/bin/javaws" 1
    
  10. 通过以下命令将Oracle Java JDK设置为默认值:

    sudo update-alternatives --set java /usr/local/java/jdk1.8.0_51/bin/java
    sudo update-alternatives --set javac /usr/local/java/jdk1.8.0_51/bin/javac
    sudo update-alternatives --set javaws /usr/local/java/jdk1.8.0_51/bin/javaws
    
  11. 通过此命令重新加载sytem wide PATH /etc /profile:

    source /etc/profile
    
  12. 重新启动系统。

  13. 通过java -version命令检查Java JDK版本。如果安装成功,它将显示如下:

    java version "1.8.0_51"
    Java(TM) SE Runtime Environment (build 1.8.0_51-xxx)
    Java HotSpot(TM) Server VM (build 25.51-xxx, mixed mode)
    

而已!

注意:我们假设下载的文件名为jdk-8u51-linux-x64.tar.gz,并在步骤2,4和5中使用的所有命令中使用此名称。它可能取决于O.S的类型,处理器类型(即32位或64位)

次佳解决方案

您不需要删除openjdk以使用/安装oracle的jdk。只需安装oracle的jdk并通过配置它来配置要使用的java:

sudo update-alternatives --config java

您可以在这里找到更多帮助:https://help.ubuntu.com/community/Java

第三种解决方案

在Ubuntu 14.04 /16.04中测试过。分三步:

  1. 从webupd8team存储库安装oracle-java7-installer(或oracle-java8-installer)

    sudo add-apt-repository ppa:webupd8team/java
    sudo apt-get update
    sudo apt-get install oracle-java7-installer
    
  2. 确保它适用于以下命令:

    java -version
    

    它应该显示类似于:

    java version "1.7.0_76"
    Java(TM) SE Runtime Environment (build 1.7.0_76-b13)
    Java HotSpot(TM) 64-Bit Server VM (build 24.76-b04, mixed mode)
    
  3. (可选)如果您确实需要/需要,请删除open-jdk:

    sudo apt-get purge openjdk-\*
    

您可以找到更多信息here

第四种方案

删除openjdk后,尝试这种方法对我有用:

在ubuntu服务器上安装oracle jdk 7(使用ubuntu 12.0.4测试)

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

更多信息:https://launchpad.net/~webupd8team/+archive/java

(注意为你的jdk版本调整这个)

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1624.html,未经允许,请勿转载。