如何在Ubuntu 14.04上安装Oracle Java?

我正在使用Ubuntu 14.04.1 LTS,x64架构,并且我特别需要安装Oracle Java。现在我知道网站上有一些说明,我按照这些说明进行操作,但是同一个网站却无法识别它。请问有人可以帮我提供一些指导吗?谢谢!

2你想安装JRE(只是为了运行Java应用程序)还是JDK(你想开发Java应用程序)?另外,你想安装哪个版本(Java 6、7还是8)? - Salem
我想要开发工具包,最新的版本8。 - Dan
你可以使用这个脚本来简化安装Oracle的jdk/jre - Jahid
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html - ChuckCottrill
1个回答

使用PPA(已过时)

注意:WebUpd8团队的PPA已于2019年4月16日停用。因此,该PPA不再包含任何Java文件。更多信息请参阅Launchpad上PPA页面。因此,这种方法已不再有效存在,仅因历史原因而保留。

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

sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

将PPA添加到我的系统是否安全,有哪些需要注意的“红旗”?

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

/usr/lib/jvm/java-8-oracle

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

export JAVA_HOME=/usr/lib/jvm/java-8-oracle

手动安装

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

  • Oracle下载一个.tar.gz文件(这里我将使用jdk-8u20-linux-x64.tar.gz);
  • 将其解压到某个地方;
  • 将解压后的文件夹移动到/usr/lib/jvm。这不是必需的,但它是安装Java运行时软件和类似IDE工具搜索的位置:
  • sudo mv /path/to/jdk1.8.0_20 /usr/lib/jvm/oracle_jdk8
    
  • 在将此JDK添加为替代之前,可以查看新替代项是否未列出:
  • sudo update-alternatives --query java
    
    sudo update-alternatives --query javac
    
  • 接下来,添加新的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
    
  • 现在您应该看到新的JDK已列出,并且可以使用以下命令在替代项之间切换:
  • sudo update-alternatives --config java
    
    sudo update-alternatives --config javac
    
  • 创建一个/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
    
完成了!只有在您注销或重新启动后,这些路径才会被识别,所以如果您想立即使用它们,请运行source /etc/profile.d/oraclejdk.sh

再次感谢,我接受了您的回答,但是请问,您能否告诉我手动安装的步骤,也就是如何安装.tar.gz文件。 - Dan
我假设你知道如何按照说明安装tar.gz文件。问题是该网站没有Java 8。那么你是如何下载的呢?你去了oracle.com吗? - Chan-Ho Suh
@Chan-HoSuh 你想要的文件在这里:点击此处 - Salem
2@user244986 请注意,PPA过程与手动过程大体相同(即安装该软件包只是下载一个基本上执行相同操作的脚本)。 - Salem
抱歉,我之前完全没有注意到,你是对的,一直都是 JDK 7。只有一个问题,你是怎么知道要导出哪个变量,以及为什么要这样做? - Dan
@user244986 只需要导出的是 PATH 和可能的 JAVA_HOME(一些程序使用它)。其他的都是从 oracle-java8-installer 包中复制过来的。 - Salem
使用Ubuntu 14.04.1,通过PPA安装的方法,这三行命令确实有效,谢谢。 - Jacek Pietal
如果你想安装Java 7,请使用sudo apt-get install oracle-java7-installer命令。 - Tuna
Ubuntu 14.04 Trusty的最后版本是8u45+8u33arm-1webupd81,要获取JAVA 8u51(最新版本),我在以下网址找到了解决方案:instalando-o-oracle-jdk-8-no-ubuntu-14-04-lts(葡萄牙语)。 - Moreno
jdk-8u77-linux-x64.tar.gz的谷歌。 - Abdennour TOUMI
看起来 oracle-java8-installer 已经在文件 /etc/profile.d/jdk.sh 中添加了使导出的变量永久生效的内容。 - Evgeni Sergeev
这个适用于Debian吗? - user690429