【问题标题】:Unable to install java8 using PPA repository on ubuntu 16.04无法在 ubuntu 16.04 上使用 PPA 存储库安装 java8
【发布时间】:2018-01-19 16:29:22
【问题描述】:

从 2018 年 1 月 17 日开始出现以下错误:

--2018-01-18 09:59:52--  http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.tar.gz
Resolving download.oracle.com (download.oracle.com)... 104.94.43.14
Connecting to download.oracle.com (download.oracle.com)|104.94.43.14|:80... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily

--2018-01-18 09:59:52--  http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.tar.gz?AuthParam=1516269712_4add28cbea8b722e5136a80b8de32670
Connecting to download.oracle.com (download.oracle.com)|104.94.43.14|:80... connected.
HTTP request sent, awaiting response... 404 Not Found

我们正在执行以在 Ubuntu 上安装 java8 的命令:

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

java7 和 java9 也出现类似错误。

请查看此问题,如果有任何解决方法,请告诉我

【问题讨论】:

  • 我可以确认404,今天遇到了同样的问题。也许只需等待 1 或 2 天,直到 Oracle 的网站管理员更仔细地扫描日志文件中的 404

标签: java java-8 ubuntu-16.04 apt-get


【解决方案1】:

看来,Oracle 最近更改了策略以很快删除过时的更新(在本例中为:8u151/8u152)。遗憾的是,ppa:webupd8team/java-maintainers 尚未发布与最新 JDK 版本 (8u161) 匹配的更新版本。但是,他们应该这样做以更改相应 JDK 存档(由 Oracle 发布)的下载 URL。

如果您需要紧急更新和/或作为“临时”解决方法,您可以通过以下步骤获取最新版本的 Oracle JDK:

  1. 在您的用户主目录中创建一个 tmp 目录,并通过 wget 下载当前的 JDK 更新 161。

    mkdir ~/tmp
    cd tmp
    wget --continue --no-check-certificate --header "Cookie: oraclelicense=a" 'http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.tar.gz' 
    
  2. 解压到tmp目录

    tar -xf jdk-8u161-linux-x64.tar.gz 
    
  3. 清除旧安装,将解压到jdk1.8...的内容移动到系统范围的JDK安装目录:

    sudo rm -R /usr/lib/jvm/java-8-oracle 
    sudo mkdir /usr/lib/jvm/java-8-oracle
    sudo mv jdk1.8.0_161/* /usr/lib/jvm/java-8-oracle
    sudo chown -R root:root /usr/lib/jvm/java-8-oracle
    
  4. 运行:

    sudo /etc/profile.d/jdk.sh
    
  5. 通过运行检查当前的java版本:

    java -version
    

注意:步骤 1 中使用的 URL 指向 x64 JDK,假设是非 32 位系统环境。您可以通过检查 Oracle 的 official download page 轻松更改它。

希望它有所帮助(作为一种解决方法)。

【讨论】:

【解决方案2】:

对于这个问题,我以前使用过另一种解决方法。对我来说,这是一种更简单的方法:

apt-get install oracle-java8-installer -y oracle-java8-set-default -y || true
cd /var/lib/dpkg/info
sudo sed -i 's|JAVA_VERSION=8u151|JAVA_VERSION=8u162|' oracle-java8-installer.*
sudo sed -i 's|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u162-b12/0da788060d494f5095bf8624735fa2f1/|' oracle-java8-installer.*
sudo sed -i 's|SHA256SUM_TGZ="c78200ce409367b296ec39be4427f020e2c585470c4eed01021feada576f027f"|SHA256SUM_TGZ="68ec82d47fd9c2b8eb84225b6db398a72008285fafc98631b1ff8d2229680257"|' oracle-java8-installer.*
sudo sed -i 's|J_DIR=jdk1.8.0_151|J_DIR=jdk1.8.0_162|' oracle-java8-installer.*
apt-get install oracle-java8-installer oracle-java8-set-default -y

最初的解决方案在这里发布:https://ubuntuforums.org/showthread.php?t=2374686&page=4&p=13731177#post13731177

【讨论】:

    猜你喜欢
    • 2021-08-27
    • 1970-01-01
    • 1970-01-01
    • 2023-04-10
    • 2018-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多