Я только что обновился с 17.04 до 17.10, но при этом ubuntu, похоже, «забыл» о моей установке JDK 8.
Я все еще могу использовать Java:
olian04:~$ java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-0ubuntu0.17.10.2-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
Но всякий раз, когда я пытаюсь установить пакет или удалить неиспользуемые, меня приветствует это:
Connecting to download.oracle.com (download.oracle.com)|92.122.94.143|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2018-01-20 16:35:41 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)
Итак, мой вопрос, как бы я это исправить? Я в порядке, либо очистив старую версию и заново установив ее, либо снова подключив мою фактическую установку java с помощью ubuntu («напоминая» о том, где установлена java), либо просто оставив неисправную установку java 8 позади и захватив новую java 9 Я просто не знаю, как это сделать ...
Я пытался просто установить openjdk-9-jdk
, но так как мне не разрешено устанавливать какие-либо пакеты без Java, я не жалуюсь на то, что JDK 8 не установлен .... У меня как бы нет идей ...
Версия Java 8, предоставляемая WebUpd8 (8u151), устарела и больше не предоставляется Oracle, поэтому выдает ошибку HTTP 404 (не найдена). Вот другой ответ , который предоставляет временное исправление:
Эта проблема возникла снова, потому что версия 151 была заархивирована. На эту версию ссылается в настоящее время PPA. Вы можете использовать следующие команды для обновления ссылки на 161:
cd /var/lib/dpkg/info
sudo sed -i 's|JAVA_VERSION=8u151|JAVA_VERSION=8u161|' 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/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/|' oracle-java8-installer.*
sudo sed -i 's|SHA256SUM_TGZ="c78200ce409367b296ec39be4427f020e2c585470c4eed01021feada576f027f"|SHA256SUM_TGZ="6dbc56a0e3310b69e91bb64db63a485bd7b6a8083f08e48047276380a0e2021e"|' oracle-java8-installer.*
sudo sed -i 's|J_DIR=jdk1.8.0_151|J_DIR=jdk1.8.0_161|' oracle-java8-installer.*
Затем попробуйте sudo apt update; sudo apt upgrade
.
Вы можете попытаться навести порядок в
apt-get install --fix-broken
, если это не поможет, мы можем пойти глубже, к dpkg
dpkg -P oracle-java8-installer
или
dpkg -r -P openjdk-8-jdk
независимо от того, какое точное имя пакета называется! Вы можете увидеть все ваши пакеты с
dpkg -l
и grep
для java или jdk
. удалив ошибочную установку и снова выполнив apt, вы можете выполнить новую установку java8 или java9.