【问题标题】:Java Install Fails On Ubuntu 14Java 安装在 Ubuntu 14 上失败
【发布时间】:2017-10-17 22:16:44
【问题描述】:

我正在尝试在我的 ubuntu 14.0.4 中安装 jave 8 (jre/jdk)

sudo apt-get update

sudo apt-get install oracle-java8-installer

我得到以下错误

Using wget settings from /var/cache/oracle-jdk8-installer/wgetrc
Downloading Oracle Java 8...
--2017-10-17 16:42:09--  http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz
Resolving download.oracle.com (download.oracle.com)... 64.78.224.186, 64.78.224.185
Connecting to download.oracle.com (download.oracle.com)|64.78.224.186|:80... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: https://edelivery.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz [following]
--2017-10-17 16:42:10--  https://edelivery.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz
Resolving edelivery.oracle.com (edelivery.oracle.com)... 23.217.152.181, 2600:141b:13:28c::2d3e
Connecting to edelivery.oracle.com (edelivery.oracle.com)|23.217.152.181|:443... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz?AuthParam=1508276650_49e5615c0aa8584dd72b809fbec787eb [following]
--2017-10-17 16:42:10--  http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz?AuthParam=1508276650_49e5615c0aa8584dd72b809fbec787eb
Connecting to download.oracle.com (download.oracle.com)|64.78.224.186|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2017-10-17 16:42:11 ERROR 404: Not Found.

download failed
Oracle JDK 8 is NOT installed.

看起来它正在寻找不可用的 8u144。

如何让它寻找 8u151?

我这样做了 sudo add-apt-repository ppa:webupd8team/java -> 不走运

【问题讨论】:

  • 抱歉,我不确定,但您可以尝试以下命令来尝试清除您的 varcache 吗? sudo apt-get autoclean sudo apt-get autoremove
  • 几天后问题已修复
  • 这个问题似乎又出现了

标签: java ubuntu ubuntu-14.04


【解决方案1】:

到今天为止,这一直是一个问题(我们每天为oracle-8-installer 打一次 webupd8team ppa)。从过去的经验来看,这可能是由于 Oracle 在一夜之间发布了他们的季度 Java 更新(8u1518u152),并移动或删除了 8u144。如果您深入研究 ppa,您会发现它仅引用 8u144。

我对 webupd8team ppa 的管理方式不是很了解,但大概需要维护者的一些手动干预来解决问题。

【讨论】:

  • 我只能假设他们正试图让自动升级变得困难,这确实给任何试图维护安装了无数软件包的系统的人带来了麻烦。它实际上会阻止人们升级到更高版本,我认为这是出于安全原因他们想要推动人们去做的事情。
【解决方案2】:

我正在尝试这个解决方案: https://ubuntuforums.org/showthread.php?t=2374686 -> 目前运气不好

什么对我有用,我手动尝试了这个:

  1. 创建一个存放JDK的文件夹

    mkdir /opt/jdk cd /opt

  2. 下载最新的JDK:

    wget --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u152-b16/aa0333dd3019491ca4f6ddbe78cdb6d0/jdk-8u152-linux-x64.tar.gz

  3. 解压

    tar -zxf jdk-8u152-linux-x64.tar.gz -C /opt/jdk

  4. 设为默认

    update-alternatives --install /usr/bin/java java /opt/jdk/jdk1.8.0_152/bin/java 100

    update-alternatives --install /usr/bin/javac javac /opt/jdk/jdk1.8.0_152/bin/javac 100

【讨论】:

  • 答案是对的。它提供了面对当前问题的唯一方法。如果您不了解问题的性质,请不要投反对票。
  • 感谢您的回答
  • 我想答案应该提供一种方法来找到当前有效链接,因为它看起来是动态的。即:去他们的网站查找,找到这个,在 wget 命令中剪辑 URL 粘贴 ...。我现在被卡住了,直到我弄清楚这一点,因为显然这个问题在 2018 年 1 月 16 日之前在 Oracle 方面或包存档维护者部分。
  • 显然需要一个 oracle 帐户才能访问较旧的存档版本。我用我的登录并能够导航到适当的文件,认为 Web 界面并不容易。我下载了它们。它也不能在 Firefox 上运行,只能在 Chrome 上运行,然后在我按照上面的手动安装程序安装相同版本的 tar.gz 后,安装程序无法下载,现在将其复制到 cd /var/cache/oracle-jdk-installers apt-get upgrade 仍然尝试从损坏的链接下载文件。并且无法升级任何软件包,导致依赖关系中断
  • 所以在手动安装后 - 是否可以通过 apt-get 禁用重新下载 tar.gz 文件,以便我可以完成升级??
【解决方案3】:

“作为临时解决办法”:

cd /var/lib/dpkg/info
sudo sed -i 's|JAVA_VERSION=8u144|JAVA_VERSION=8u152|' oracle-java8-installer.*
sudo sed -i 's|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u152-b16/aa0333dd3019491ca4f6ddbe78cdb6d0/|' oracle-java8-installer.*
sudo sed -i 's|SHA256SUM_TGZ="e8a341ce566f32c3d06f6d0f0eeea9a0f434f538d22af949ae58bc86f2eeaae4"|SHA256SUM_TGZ="218b3b340c3f6d05d940b817d0270dfe0cfd657a636bad074dcabe0c111961bf"|' oracle-java8-installer.*
sudo sed -i 's|J_DIR=jdk1.8.0_144|J_DIR=jdk1.8.0_152|' oracle-java8-installer.*

然后再次尝试安装 JAVA。来自这个ubuntuforums thread

【讨论】:

    【解决方案4】:

    将 Java Oracle tar 包下载到您的主目录后,您需要运行以下脚本来自动安装 Java 8。

    #!/bin/bash -e
    
    JAVA_VER=$(javadd -version 2>&1 | sed -n ';s/.* version "\(.*\)\.\(.*\)\..*"/\1\2/p;')
    
    if [ "${JAVA_VER}" != "18" ]; then
        file_name="jdk-8u172-linux-x64.tar.gz"
        cd ~
        sudo mkdir -p /opt/jdk
        sudo tar -zxf ~/${file_name} -C /opt/jdk
    
        sudo apt-get remove -y --purge openjdk-\* || true
        cd /opt/jdk/jdk1.8.0_172/bin
    
        for j in `ls j*`; do
            sudo update-alternatives --force --install /usr/bin/${j} ${j} /opt/jdk/jdk1.8.0_172/bin/${j} 100
        done
        sudo update-alternatives --display java
    fi
    

    【讨论】:

      猜你喜欢
      • 2015-02-08
      • 1970-01-01
      • 2015-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-20
      • 2017-08-16
      • 2017-12-25
      相关资源
      最近更新 更多