![在 ubuntu 上将 Java 版本更新至 8](https://linux22.com/image/1132944/%E5%9C%A8%20ubuntu%20%E4%B8%8A%E5%B0%86%20Java%20%E7%89%88%E6%9C%AC%E6%9B%B4%E6%96%B0%E8%87%B3%208.png)
我想在我的 ubuntu 12.04 计算机上更新 Java 版本(更新,而不是安装)。我目前使用的是 Java 7.x,我想将其更新到尽可能最新的版本(至少 8.0),但不要太复杂。
答案1
Java 8 在 Ubuntu 12.04 存储库中不可用,但可从 Launchpad PPA 中获取。
你也无法将 Java 版本更新到下一个 Java 版本,但您可以并排安装不同的 Java 版本。
要安装 Java 版本 8 (OpenJDK 8 版本- 不是 ORACLE Java 8)打开终端并执行:
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk
如果您只想安装Java运行时环境:
sudo apt-get install openjdk-8-jre
注1:
正如你所说的“......没有太复杂......”,我假设你从包含 OpenJDK 的 Ubuntu 存储库安装了 Java 7,并且没有添加 WebUpd8 PPA(ORACLE Java)。
笔记2 :
正如你所说,你得到了File "/usr/bin/add-apt-repository", line 37 print _("The %s named '%s' has no PPA named '%s'" ^ SyntaxError: invalid syntax
错误,看看这里。
建议 :
保持两个版本并排安装,一些其他包或程序可能依赖于 Java 7。
但是,当您不想同时拥有这两个版本并且不再需要 Java 7...请将其删除。
答案2
由于您没有指定是否要安装 OpenJDK 还是 Oracle JDK,我的答案涵盖 Oracle JDK。
引用这段文字很有趣这里.以下内容适用于JDK8也适用于所有 Ubuntu 版本或更高版本。
Oracle JDK7 本身并不托管在 PPA 中,因为新的 Java 许可证不允许这样做(这也是它从官方 Ubuntu 存储库中删除的原因);PPA 中的软件包会自动从其官方网站下载 Oracle Java JDK 7,并将其安装在您的 Ubuntu / Linux Mint 计算机上,就像 flashplugin-installer 软件包一样。
笔记那JDK9预计将在今年发布,因此在此之前请勿尝试使用。
因此,这是安装(而不是更新)Java 8 版本的方法:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
答案3
除了之前的答案之外...我按照这个命令从这个 ppa 安装后,我的 JAVA_HOME 出现了问题:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
sudo apt-get install oracle-java8-set-default
第 4 条命令未按预期工作。因此,就我而言,我必须手动运行以下命令:
sudo /etc/environment(add the below two lines and append to PATH if needed)
JAVA_HOME=/path-to-java-before-bin-directory
export JAVA_HOME
sudo source /etc/environment
然后它工作正常。也验证一下:
root@ashu-700-430qe:/DataStax_POC# which java
/usr/bin/java
root@ashu-700-430qe:/DataStax_POC# java -version
java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)
root@ashu-700-430qe:/DataStax_POC#
我提到了关联。 希望这可以帮助
答案4
如果您希望保留两个版本并根据需要进行切换,请考虑以下命令:
update-java-alternatives
确保特定 java (sun-java) 是默认运行时。使用update-java-alternatives --list
显示所有可能的选项,并update-java-alternatives --set <java version name from --list>
进行切换。