Невозможно установить openjdk-8-jre-headless на Debian Jessie

28

В эту пятницу я увидел, что по какой-то причине у меня было 2 пакета с задержкой apt-get upgrade, поэтому, естественно, я сделал то, что сделал бы любой неопытный системный администратор, и удалил пакеты в надежде, что смогу просто переустановить их, и проблема будет решена.

Мало ли я знал, я только усугубил ситуацию. Когда я попытался переустановить openjdk-8-jre-headless, я получил это:

$ 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.

Я пытался обновить упомянутый пакет вручную, но безрезультатно.

$ apt-get upgrade ca-certificates-java
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... ca-certificates-java is already the newest version.
Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Оглядываясь вокруг, я не видел нигде упоминания о решении этой точной ошибки.

Я использую ElasticSearch на сервере, который я перезапустил, но я должен был ожидать, что он не запустится в этот момент. Так что теперь я без Java, а мои пользователи без поиска. Что происходит и как я могу это исправить?

SeinopSys
источник

Ответы:

34

Это сработало для меня:

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

REF: https://unix.stackexchange.com/questions/342403/openjdk-8-jre-headless-depends-ca-certificates-java-but-it-is-not-going-to-be

Джейсон
источник
Этот ответ помог мне решить проблему, связанную с установкой Jenkins на Debian Jessie (Docker-контейнер). Просто говорю :).
Иванлеонч
-tэто важно.
Fracz
22
  1. Сначала нужно добавить jessie-backportsрепо.

    echo "deb http://http.debian.net/debian jessie-backports main" > /etc/apt/sources.list.d/jessie-backports.list
    
  2. установить команды

    sudo apt-get update
    sudo apt-get install -t jessie-backports openjdk-8-jre-headless
    
  3. перейти на новую Java

    sudo /usr/sbin/update-java-alternatives -s java-1.8.0-openjdk-amd64
    

Ссылка: https://github.com/OpenTreeOfLife/germinator/wiki/Debian-upgrade-notes:-jessie-and-openjdk-8

Амос Цзяньцзюнь Конг
источник
Я думаю , что вы хотите --jre-headlessдля , /usr/sbin/update-java-alternativesчтобы не пытаться обновить вещи , как AppletViewer, которые отсутствуют обезглавленный.
MSalters
1

У меня была эта проблема на Debian Buster, который также не имеет этого пакета. Поскольку ни один из ответов на этой странице не работал для меня, и принятый ответ привел меня к другому SE-ответу, который я тоже не смог получить, я просто хотел опубликовать то, что сработало для меня, на Buster.

Следуя инструкциям на сайте Debian , я добавил следующую строку /etc/apt/sources.list:

deb http://security.debian.org/debian-security stretch/updates main

Я был тогда в состоянии sudo apt updateи sudo apt install openjdk-8-jre-headless.

mttpgn
источник
-1

это работает для меня

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

руководство

user3073309
источник
Ваш ответ содержит, ubuntu xenialно вопрос помеченdebian
SeinopSys