从2018年1月18日获得以下错误:
--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带来类似的错误。
请查看此问题,并告知我是否有任何解决方法
答案 0 :(得分:3)
看起来,Oracle改变了政策,以便很快删除过时的更新(在这种情况下:8u151 / 8u152)。遗憾的是,ppa:webupd8team/java
- 维护者尚未发布与最新JDK版本(8u161)相匹配的软件包的更新版本。但是,它们应该这样做以更改相应JDK存档的下载URL(由Oracle发布)。
如果您需要紧急更新和/或作为“临时”解决方法,您可以通过以下步骤获取最新版本的Oracle JDK:
在您的用户主目录中创建一个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'
将其解压缩到tmp
目录
tar -xf jdk-8u161-linux-x64.tar.gz
清除旧安装并将提取的内容移至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
执行命令
sudo /etc/profile.d/jdk.sh
运行以下命令检查当前的java版本:
java -version
注意:假设非32位系统环境,步骤1中使用的URL指向x64
JDK。您可以通过Oracle检查official download page来轻松更改它。
希望它有所帮助(作为解决方法)。
答案 1 :(得分:1)
我之前使用过这个问题还有一个解决方法。对我来说,这是一种更简单的方法:
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