在过去的一周里,我一直在使用Ansible安装一些服务器。直到几个小时前,我一直在使用的java8剧本“停止工作”是随机使用的,直到今天,一切都很顺利。我几个星期没碰过也没看过。我甚至对一个已知的工作版本做了git checkout,但仍然不起作用。
问题与这个https://stackoverflow.com/questions/46815897/jdk-8-is-not-installed-error-404-not-found几乎是一字不差,每次运行sudo apt-get install oracle-java8-installer时,我都会得到一个404。它还尝试在其他命令(如java8 )上下载sudo apt autoremove,而我总是看到相同的错误-
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz?AuthParam=1531861842_cbe60a307e0051ef681fa0cef4e500ce [following]
--2018-07-17 21:08:42-- http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz?AuthParam=1531861842_cbe60a307e0051ef681fa0cef4e500ce
Connecting to download.oracle.com (download.oracle.com)|23.40.18.106|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2018-07-17 21:08:42 ERROR 404: Not Found.
download failed
Oracle JDK 8 is NOT installed.
dpkg: error processing package oracle-java8-installer (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
oracle-java8-installer
E: Sub-process /usr/bin/dpkg returned an error code (1)我已经尝试了上面所列的所有问题以及我在其他地方找到的许多其他解决方案。我开始觉得我的IP被封锁了,或者甲骨文有一些问题,我是不是遗漏了什么?
发布于 2018-07-17 22:37:04
我也犯了同样的错误。在WebUpd8的人员更新他们的包之前,您需要自己编辑它。我使用了您链接到的答案,只是使用了新的数据:
cd /var/lib/dpkg/info
sed -i 's|JAVA_VERSION=8u171|JAVA_VERSION=8u181|' oracle-java8-installer.*
sed -i 's|J_DIR=jdk1.8.0_171|J_DIR=jdk1.8.0_181|' oracle-java8-installer.*
sed -i 's|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/|' oracle-java8-installer.*
sed -i 's|SHA256SUM_TGZ="b6dd2837efaaec4109b36cfbb94a774db100029f98b0d78be68c27bec0275982"|SHA256SUM_TGZ="1845567095bfbfebd42ed0d09397939796d05456290fb20a83c476ba09f991d3"|' oracle-java8-installer.*发布于 2018-07-18 06:43:47
您使用的是什么版本的Ubuntu?是否有任何理由不使用官方开放源码openjdk-8-jdk包而不是使用oracle的包?
sudo apt-get install openjdk-8-jdk如果你在Ubuntu 18.04和16.04的话,应该可以工作。在这种情况下,Ansible的任务非常简单:
- name: Install openjdk-8-jdk
action: apt pkg=openjdk-8-jdk state=installed对于Ubuntu16.04之前的版本(我只使用14.04版本,其他版本是EOL),您可以使用Matthias储存库:
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk对于Ansible,对于最后一种情况,您可以将回购添加为如下任务:
- hosts: your-server
tasks:
- name: install repo for Java 8 in Ubuntu 14.04 or below
apt_repository: repo='ppa:openjdk-r/ppa'https://serverfault.com/questions/922361
复制相似问题