Como substituir uma instalação Java defeituosa por uma nova?

1

Eu recentemente atualizei de 17.04 para 17.10, mas ao fazê-lo, o ubuntu se faz "esquecer" da minha instalação do JDK 8.

Eu ainda posso usar o 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)

Mas sempre que eu tento instalar um pacote ou remover os não usados, sou saudado por isso:

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)

Então, minha pergunta é: como eu consertaria isso? Eu estou bem com a remoção da versão antiga e reinstalá-lo novamente, ou ligar minha instalação java real com Ubuntu novamente ("lembrando" onde java está instalado) ou apenas deixando o java 8 com defeito instalar atrás e pegar um novo java 9 . Eu não tenho ideia de como fazer isso ...

Eu tentei apenas instalar o openjdk-9-jdk , mas como não tenho permissão para instalar nenhum pacote sem o Java reclamando sobre o JDK 8 não estar instalado ... Estou meio sem ideias ...

    
por Olian04 20.01.2018 / 16:51

2 respostas

1

A versão do Java 8 que o WebUpd8 fornece (8u151) está desatualizada e não é mais fornecida pelo Oracle, portanto, apresenta um erro HTTP 404 (não encontrado). Aqui está outra resposta que fornece uma correção temporária:

Esse problema ocorreu novamente porque a versão 151 foi arquivada. Esta versão é referenciada atualmente pelo PPA. Você pode usar os seguintes comandos para atualizar a referência para 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.*

Em seguida, experimente sudo apt update; sudo apt upgrade .

    
por Chai T. Rex 20.01.2018 / 18:39
0

Você pode tentar colocar seu apt em ordem com

apt-get install --fix-broken

Se isso não ajudar, podemos ir mais fundo até dpkg

dpkg -P oracle-java8-installer

ou

dpkg -r -P openjdk-8-jdk

qualquer que seja o nome do pacote exato ! Você pode ver todos os seus pacotes com

dpkg -l

e grep para java ou jdk

Depois de ter removido a instalação defeituosa e apt é conteúdo novamente, você pode fazer uma nova instalação de java8 ou java9.

    
por Robert Riedl 20.01.2018 / 17:41