如何在 Ubuntu 14.04 上安装 Oracle Java?

Dan*_*Dan 207 java oracle software-installation

我使用的是 Ubuntu 14.04.1 LTS,x64 架构,我特别需要安装Oracle Java。现在我知道我遵循的网站上有一些说明,但同一个网站无法识别它。任何人都可以帮我一些指示吗?谢谢!

Sal*_*lem 422

使用 PPA(已过时)

注意: WebUpd8 团队的 PPA 已从 2019 年 4 月 16 日起停产,因此该 PPA 没有任何 Java 文件。更多信息可以在PPA 的 Launchpad 页面上找到。因此,由于历史原因,这种方法不再有效和存在。

您可以使用WebUpd8 PPA(这将从 Oracle 下载所需文件并安装 JDK 8):

sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
Run Code Online (Sandbox Code Playgroud)

将 PPA 添加到我的系统中是否安全?需要注意哪些“危险信号”?

还要确保您的JAVA_HOME变量已设置为:

/usr/lib/jvm/java-8-oracle
Run Code Online (Sandbox Code Playgroud)

为此,您可以使用以下命令(请参阅手动安装的第 3 步以了解如何使其永久化):

export JAVA_HOME=/usr/lib/jvm/java-8-oracle
Run Code Online (Sandbox Code Playgroud)

手动安装

Oracle 提供的 tar.gz 没有实际安装过程。您只需将这些文件解压缩到您想要的位置并将它们添加到您的路径中。所以过程如下:

  • .tar.gzOracle下载一个(这里我将使用jdk-8u20-linux-x64.tar.gz);
  • 将其提取到某个地方;
  • 将解压后的文件夹移动到/usr/lib/jvm. 这不是必需的,但它是安装 Java 运行时软件的地方,也是 IDE 之类的工具可以搜索它的地方:

    sudo mv /path/to/jdk1.8.0_20 /usr/lib/jvm/oracle_jdk8
    
    Run Code Online (Sandbox Code Playgroud)
  • 在addin这个jdk作为替代之前,可以看到没有列出新的替代:

    sudo update-alternatives --query java
    
    sudo update-alternatives --query javac
    
    Run Code Online (Sandbox Code Playgroud)
  • 接下来,添加新的 jdk 替代品(2000 是优先级,您可以随意选择不同的数字):

    sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/oracle_jdk8/jre/bin/java 2000
    
    sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/oracle_jdk8/bin/javac 2000
    
    Run Code Online (Sandbox Code Playgroud)
  • 现在您应该会看到列出的新 jdk,您可以使用以下命令在备选方案之间切换:

    sudo update-alternatives --config java
    
    sudo update-alternatives --config javac
    
    Run Code Online (Sandbox Code Playgroud)
  • 创建一个/etc/profile.d/oraclejdk.sh包含以下内容的文件(调整路径以反映您存储 JDK 的路径):

    export J2SDKDIR=/usr/lib/jvm/oracle_jdk8
    export J2REDIR=/usr/lib/jvm/oracle_jdk8/jre
    export PATH=$PATH:/usr/lib/jvm/oracle_jdk8/bin:/usr/lib/jvm/oracle_jdk8/db/bin:/usr/lib/jvm/oracle_jdk8/jre/bin
    export JAVA_HOME=/usr/lib/jvm/oracle_jdk8
    export DERBY_HOME=/usr/lib/jvm/oracle_jdk8/db
    
    Run Code Online (Sandbox Code Playgroud)

完毕!只有在您注销或重新启动后才会识别这些路径,因此如果您想立即使用它们,请运行source /etc/profile.d/oraclejdk.sh.

  • @ user244986 查看我的编辑。请注意,PPA 过程与手动过程或多或少相同(即安装该软件包仅下载一个脚本即可完成基本相同的操作)。 (2认同)