openjdk-8-jre-headless: Depende: ca-certificates-java, mas não será instalado

43

Não é possível instalar o Java8

apt-get install openjdk-8-jre-headless
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 openjdk-8-jre-headless : Depends: ca-certificates-java but it is not going to be installed
E: Unable to correct problems, you have held broken packages

Pesquisei no Google e adicionei repositórios e outras sugestões, mas nada me permitiu instalar o Java 8 ainda.

idéias?

lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 8.7 (jessie)
Release:        8
Codename:       jessie
Jason
fonte
1
Enfrentando o mesmo problema aqui. Estava trabalhando até ontem. Hoje, inicialmente se queixou de ca-certificates-java e agora nem consegue encontrar o pacote.
21417 Jayachandran
1
Apenas interessante, por que você não deseja instalar a versão do oracle?
ka3ak
@ ka3ak qual é a versão de instalação do oracle? Eu tentei fazer uma instalação do apt-get com um pacote que tinha o install e o oracle, mas não funcionou.
Jason
1
@FrankThornton Aqui está como eu o instalei no meu sistema (Kubuntu): sudo add-apt-repository ppa: webupd8team / java sudo apt-get update sudo apt-get install oracle-java8-installer Fonte: webupd8.org/2012/09 /…
ka3ak
Obrigado! Eu tinha certeza que tentei isso ou pelo menos algo assim e tive problemas. Eu posso ter tido um repo diferente.
Jason

Respostas:

88

é essa Jessie? Com backports

apt install -t jessie-backports  openjdk-8-jre-headless ca-certificates-java

fonte
Parece problema de backport. Isso permitiu a instalação.
Jason
1
Isso funcionou para mim também. Se importa em adicionar uma explicação sobre o que o -tparâmetro faz e como isso resolve o problema?
hheimbuerger
1
A opção -t diz ao apt, de qual fonte ele deve instalar o pacote. aptitude why-not ca-certificates-javap openjdk-8-jre-headless Beschädigt ca-certificates-java (< 20160321~) você precisa da versão de Jessie-backports. apt-cache policy ca-certificates-java ca-certificates-java: Installiert: 20140324 Installationskandidat: 20140324 Versionstabelle: 20161107~bpo8+1 0 100 http://http.us.debian.org/debian/ jessie-backports/main amd64 Packages *** 20140324 0 500 http://http.us.debian.org/debian/ jessie/main amd64 Packages
6

Não está funcionando nos backports de Jessie. Eu tentei esticar e ele foi instalado.

echo 'deb http://ftp.au.debian.org/debian/ stretch main contrib non-free' > /etc/apt/sources.list.d/stretch.list && \
apt-get update && \
apt-get install -y --no-install-recommends openjdk-8-jre-headless && \
rm /etc/apt/sources.list.d/stretch.list && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*

PS: Eu usei um espelho australiano desde que estou aqui. Escolha o melhor para você aqui .

Jayachandran
fonte
3

isso funcionou para mim muito obrigado, note que você tem um 'deb' extra em seu eco que eu precisei remover, também estou em Oz, mas isso deve funcionar em todos os repositórios até agora, parece que foi um problema com certificados para lista fixa de java versões

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=851667

new_java_user
fonte
0

Eu continuo acertando esse problema. Muito frustrante. Tenho compilações automatizadas de empacotador e, quando o jdk / jre é atualizado, esse problema pode surgir novamente. depois de muito puxar o cabelo, achei bastante confiável e totalmente automatizável.

observe que você possui um repositório de backports definido corretamente como mencionado em outras partes desta página. minha imagem veio com ela pré-configurada. o seu, no entanto, pode não.

  1. instalar ca-certs a partir de backports
  2. instale jre e jdk + headless como um segundo comando

    sudo apt install -t jessie-backports ca-certificates-java
    sudo apt-get -y install openjdk-8-jdk openjdk-8-jre openjdk-8-jdk-headless openjdk-8-jre-headless
    

executar os dois juntos solicitará uma resposta S / N em um arquivo de configuração, que é irritante para automatizar. portanto, eles DEVEM ser executados separadamente se você quiser que isso funcione sem a interação humana.

mchotsun
fonte
-1

Isso funciona para mim

apt-get install software-properties-common
add-apt-repository "deb http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main"
apt-get update
apt-get install oracle-java8-installer

guia de referência

user3073309
fonte