Debian에 JDK 8을 설치하려고 합니다. 비슷한 주제를 많이 찾았지만 그 중 어느 것도 내 문제를 해결하지 못했습니다. 대부분의 테마에서 해결책은 다음 명령입니다.
sudo apt-get install software-properties-common
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk
하지만 이 오류가 발생했습니다.
패키지 목록을 읽는 중... 완료 종속성 트리 작성 상태 정보를 읽는 중... 완료 일부 패키지를 설치할 수 없습니다. 이는 불가능한 상황을 요청했거나 불안정한 배포판을 사용하는 경우 일부 필수 패키지가 생성되지 않았거나 들어오는 패키지에서 이동되었음을 의미할 수 있습니다. 다음 정보는 이 상황을 해결하는 데 도움이 될 수 있습니다.
다음 패키지에는 충족되지 않은 종속성이 있습니다. openjdk-8-jdk : 종속성: openjdk-8-jre (= 8u111-b14-2~bpo8+1) 그러나 종속성은 설치되지 않습니다: openjdk-8-jdk-headless ( = 8u111- b14-2~bpo8+1) 그러나 설치되지 않습니다. E: 문제를 해결할 수 없습니다. 패키지가 손상되었습니다.
업데이트도 확인했어요
sudo update-alternatives --config java
출력은 다음과 같습니다
Java 연결 그룹(/usr/bin/java 제공)에는 단 하나의 대안이 있습니다: /usr/lib/jvm/java-7-openjdk-i386/jre/bin/java 구성이 필요하지 않습니다.
답변1
openjdk-8은 기본 Jessie/stable 설치에서 사용할 수 있습니다. 설치하려면 apt-get이 필요합니다(openjdk-8-jdk 및 원하는/필요한 것은 무엇이든 권장하거나 의존합니다).
물론 contrib 및 무료가 아닌 저장소를 포함하여 /etc/apt/sources.list 파일에 따라 달라질 수 있습니다.
/etc/apt/sources.list는 다음과 같아야 합니다.
deb http://ftp.us.debian.org/debian/ jessie main contrib non-free
deb http://security.debian.org/ jessie/updates main contrib non-free
deb http://ftp.us.debian.org/debian/ jessie-updates main contrib non-free
deb http://ftp.us.debian.org/debian/ jessie-backports main contrib non-free
답변2
어떤 옵션을 사용할 수 있는지 알아보려면 항상 데비안 PTS를 먼저 확인하세요. 예를 들어 내가 간다면 -
https://tracker.debian.org/pkg/openjdk-8
왼쪽에는 버전이라는 것이 있습니다. 보이시나요? 이렇게 적혀 있습니다.
stable-bpo: 8u121-b13-1~bpo8+1
testing: 8u121-b13-3
unstable: 8u121-b13-4
이제 stable-bpo는 백포트된 상태임을 의미합니다. 백포트 페이지에 해당 기능이 잘 설명되어 있습니다.https://backports.debian.org/
따라서 @Reto가 공유한 내용과 백포트 주소를 기존 패키지 목록에 추가해야 합니다.
deb http://ftp.us.debian.org/debian/ jessie main contrib non-free
deb http://security.debian.org/ jessie/updates main contrib non-free
deb http://ftp.us.debian.org/debian/ jessie-updates main contrib non-free
deb http://ftp.us.debian.org/debian/ jessie-backports main contrib non-free
이제 인덱스를 업데이트하면 마지막에 다음과 같이 표시됩니다.
Reading package lists... Done
Building dependency tree
Reading state information... Done
6 packages can be upgraded. Run 'apt list --upgradable' to see them.
업그레이드할 수 있는 패키지 수를 확인할 방법이 없습니다. 업그레이드할 수 있는 패키지 수, 업데이트 빈도 등에 따라 달라지기 때문입니다. 4개의 라인이 위와 유사하다면 인덱스 업데이트가 오류 없이 원활하게 진행되었음을 의미합니다.
완료되면 간단히 할 수 있습니다 -
$ aptitude search openjdk-8
나열되거나 나열되지 않은 다양한 openjdk-8 패키지 수에 대한 목록을 가져옵니다. 예를 들어, 테스트 중인데 여기에 많이 있습니다. openjdk-9도 있습니다.
다운로드한 후에는 이전에 설치하려고 했던 것처럼 설치하세요.
$ sudo aptitude install openjdk-8
그리고 적성이 모든 종속성 해결을 처리하도록 하세요. 여전히 궁금한 점이 있으면 여기로 알려주시기 바랍니다.
답변3
여기서는 문제가 해결되지 않습니다..
# 고양이 /etc/apt/sources.list
#deb hxxp://debian.mirrors.ovh.net/debian/ jessie main contrib non-free
#deb-src hxxp://debian.mirrors.ovh.net/debian/ jessie main contrib non-free
deb hxxp://security.debian.org/ jessie/updates main contrib non-free
deb-src hxxp://security.debian.org/ jessie/updates main contrib non-free
# jessie-updates, previously known as 'volatile'
deb hxxp://debian.mirrors.ovh.net/debian/ jessie-updates main contrib non-free
deb-src hxxp://debian.mirrors.ovh.net/debian/ jessie-updates main contrib non-free
# jessie-backports, previously on backports.debian.org
deb hxxp://debian.mirrors.ovh.net/debian/ jessie-backports main contrib non-free
deb-src hxxp://debian.mirrors.ovh.net/debian/ jessie-backports main contrib non-free
deb hxxp://debian.mirrors.ovh.net/debian/ jessie main contrib non-free
deb-src hxxp://debian.mirrors.ovh.net/debian/ jessie main contrib non-free
# apt-get 설치 openjdk-8-jdk
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-jdk : Depends: openjdk-8-jre (= 8u121-b13-1~bpo8+1) but it is not going to be installed
Depends: openjdk-8-jdk-headless (= 8u121-b13-1~bpo8+1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.