openjdk-8-jre-headless: Hängt ab von: ca-certificates-java, wird aber nicht installiert

43

Java8 kann nicht installiert werden

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

Ich habe nach Google gesucht und Repos und andere Vorschläge hinzugefügt, aber bisher konnte ich Java 8 noch nicht installieren.

Ideen?

lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 8.7 (jessie)
Release:        8
Codename:       jessie
Jason
quelle
1
Vor dem gleichen Problem hier. Es hat bis gestern funktioniert. Heute hat es sich anfangs über ca-certificates-java beschwert und kann jetzt nicht einmal das Paket finden.
Jayachandran
1
Nur interessant, warum willst du nicht die Oracle-Version installieren?
Ka3ak
@ ka3ak was ist die oracle install version? Ich habe versucht, eine apt-get-Installation mit einem Paket durchzuführen, das install und oracle enthält, aber es hat nicht funktioniert.
Jason
1
@FrankThornton Hier ist , wie ich es auf meinem System installiert (Kubuntu): sudo add-apt-repository ppa: webupd8team / java sudo apt-get update sudo apt-get oracle-java8-installer Quelle installieren: webupd8.org/2012/09 /…
ka3ak
Vielen Dank! Ich war mir ziemlich sicher, dass ich das oder zumindest etwas Ähnliches ausprobiert hatte und Probleme hatte. Möglicherweise hatte ich ein anderes Repo.
Jason

Antworten:

88

Ist das Jessie? Mit Backports

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

quelle
Backport-Problem sieht aus wie. Das erlaubte es zu installieren.
Jason
1
Das hat auch bei mir funktioniert. Möchten Sie eine Erklärung hinzufügen, was der -tParameter bewirkt und wie das Problem dadurch behoben wird?
Hheimbuerger
1
Die Option -t teilt apt mit, von welcher Quelle das Paket installiert werden soll. aptitude why-not ca-certificates-javagibt p openjdk-8-jre-headless Beschädigt ca-certificates-java (< 20160321~) die Version von jessie-updates benötigen. 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

Es funktioniert nicht mit Jessies Backports. Ich habe es mit Stretch versucht und es wurde installiert.

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: Ich habe einen australischen Spiegel benutzt, seit ich hier bin. Wählen Sie hier das Beste für Sie aus .

Jayachandran
quelle
3

das hat bei mir funktioniert vielen dank, beachte, dass du ein extra 'deb' in deinem echo hast, das ich entfernen musste, ich bin auch in oz, aber das sollte jetzt auf allen repos funktionieren, es scheint ein problem mit zertifikaten für die feste liste von java zu sein Versionen

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

new_java_user
quelle
0

Ich treffe dieses Problem immer wieder. Sehr frustrierend. Ich habe automatisierte Packer-Builds und wenn das jdk / jre aktualisiert wird, kann dieses Problem erneut auftreten. Nach langem Ziehen der Haare habe ich festgestellt, dass dies ziemlich zuverlässig und voll automatisierbar ist.

Beachten Sie, dass Sie ein Backport-Repo haben, das wie in den anderen Teilen dieser Seite beschrieben richtig definiert ist. Mein Bild kam damit vorinstalliert. Deins aber vielleicht nicht.

  1. Installieren Sie Zertifikate aus den Backports
  2. installiere jre und jdk + headless als zweiten befehl

    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
    

Wenn Sie beide gleichzeitig ausführen, werden Sie zu einer J / N-Antwort für eine Konfigurationsdatei aufgefordert, deren Automatisierung ärgerlich ist. Sie MÜSSEN daher separat ausgeführt werden, wenn dies ohne menschliche Interaktion funktionieren soll.

mchotsun
quelle
-1

Das funktioniert bei mir

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

Leitfaden zu verweisen

user3073309
quelle