Instalacja Javy 8 i Javy 11 na Debianie 13 i Debianie 12

Opublikowano Zaktualizowano 5 min czytania

Debian nie zawiera Javy 8 w ogóle, a Javy 11 od wydania 12. Pokazujemy, jak mimo to czysto zainstalować obie wersje przez apt, korzystając z Eclipse Temurin i repozytorium Adoptium.

Chcesz zainstalować Javę 8 lub Javę 11 na swoim serwerze z Debianem? Ważna uwaga na start: obie wersje zniknęły z oficjalnych repozytoriów Debiana. Ani Debian 13 (Trixie), ani Debian 12 (Bookworm) nie zawierają pakietów openjdk-8openjdk-11. Polecenie apt install openjdk-11-jre-headless po prostu się tam nie powiedzie. Pewną drogą jest Eclipse Temurin.

Wymagania

Potrzebujesz dostępu SSH z uprawnieniami root (albo użytkownika z uprawnieniami sudo) na aktualnym Debianie. Zalecamy Debiana 13 „Trixie” i Debiana 12 „Bookworm”. Debian 10 zakończył okres wsparcia w czerwcu 2024 roku i nie otrzymuje już regularnych aktualizacji bezpieczeństwa.

Wersję Debiana działającą na twoim serwerze pokaże ci to polecenie:

cat /etc/os-release

Następnie zaktualizuj listę pakietów i wgraj dostępne aktualizacje:

apt update && apt upgrade -y

Która wersja Javy jest w którym Debianie?

To zestawienie pokazuje, co faktycznie leży w oficjalnych repozytoriach Debiana (stan na lipiec 2026):

PakietDebian 13Debian 12Debian 11
openjdk-8-jre-headlessbrakbrakbrak
openjdk-11-jre-headlessbrakbrak11.0.31
openjdk-17-jre-headlessbrak17.0.1917.0.19
openjdk-21-jre-headless21.0.11brakbrak
openjdk-25-jre-headless25.0.3brakbrak

Dla Javy 8 nie ma już zatem w Debianie żadnego pakietu, a Javę 11 znajdziesz wyłącznie w Debianie 11. Czy dany pakiet jest dostępny w twoim systemie, sprawdzisz w każdej chwili sam:

apt-cache policy openjdk-11-jre-headless

Jeśli w wierszu „Kandydująca” widnieje wpis (brak), pakietu nie ma w twojej wersji Debiana.

Której wersji Javy naprawdę potrzebujesz?

Java 8 i Java 11 to starsze wydania LTS. Nowe oprogramowanie opiera się zwykle na Javie 17 lub Javie 21, ale część aplikacji serwerowych (na przykład starsze serwery Minecraft, pluginy albo rozbudowane systemy firmowe) nadal działa wyłącznie z Javą 8 lub Javą 11. Starszą wersję instaluj więc tylko wtedy, gdy twoja aplikacja wyraźnie tego wymaga. Zajrzyj wcześniej do dokumentacji i sprawdź, czy jednak nie obsługuje nowszego wydania, bo ono dostaje aktualizacje bezpieczeństwa znacznie dłużej.

Instalacja Javy 8 i Javy 11 z repozytorium Adoptium

Eclipse Temurin to swobodnie dostępny build OpenJDK. Repozytorium Adoptium udostępnia dla Debiana 13 wersje od 8 do 26, a dla Debiana 12 dostępne jest to samo źródło pakietów. Dzięki temu zainstalujesz dowolną wersję Javy niezależnie od tego, co dostarcza twoja dystrybucja, a potem będziesz ją aktualizować całkiem zwyczajnie przez apt.

Konfiguracja repozytorium Adoptium

Zainstaluj najpierw potrzebne pakiety pomocnicze i utwórz katalog na klucze repozytoriów:

apt install -y wget gpg apt-transport-https ca-certificates

mkdir -p /etc/apt/keyrings

Potem pobierz klucz podpisu i dodaj źródło pakietów. Wpis w pliku źródeł wskazuje przez signed-by= wprost na ten jeden klucz, dzięki czemu obowiązuje on wyłącznie dla tego repozytorium:

wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | tee /etc/apt/keyrings/adoptium.asc

echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | tee /etc/apt/sources.list.d/adoptium.list

apt update

Instalacja Javy 8

apt install temurin-8-jre -y

Wariant jre zawiera tylko środowisko uruchomieniowe i w zupełności wystarcza do uruchamiania aplikacji Javy. Jeśli potrzebujesz dodatkowo kompilatora, zainstaluj zamiast tego temurin-8-jdk.

Instalacja Javy 11

apt install temurin-11-jre -y

Tu obowiązuje ta sama zasada: do programowania i kompilacji wybierz temurin-11-jdk.

Instalacja Javy 11 na Debianie 11 z repozytorium

Jeśli na twoim serwerze działa jeszcze Debian 11 „Bullseye”, OpenJDK 11 leży tam nadal w oficjalnym repozytorium:

apt install openjdk-11-jre-headless -y

Debian 11 dostaje jednak już tylko ograniczone aktualizacje bezpieczeństwa w ramach LTS. Zaplanuj aktualizację systemu w niedalekiej przyszłości i przy tej okazji przenieś Javę na Temurin, żeby po skoku wersji nie zostać bez pasującego pakietu.

Alternatywa: skorzystaj z domyślnej wersji Debiana

Jeśli twoja aplikacja nie wymaga konkretnej wersji Javy, a potrzebuje po prostu aktualnego środowiska, najwygodniejszą drogą jest metapakiet:

apt install default-jre-headless -y

W zależności od wersji Debiana otrzymasz następującą Javę:

DystrybucjaWersja Javy z default-jre-headless
Debian 13Java 21
Debian 12Java 17
Debian 11Java 11

Na Debianie 11 dostaniesz więc dokładnie Javę 11, a na nowszych wydaniach Debiana wersję znacznie świeższą.

Sprawdzenie instalacji

Na koniec zweryfikuj, czy instalacja się powiodła. Odpytaj w tym celu zainstalowaną wersję Javy:

java -version

Jeśli w wyniku widnieje oczekiwana wersja główna (czyli 1.8.0 dla Javy 8 albo 11.0 dla Javy 11), instalacja się udała.

Ustawienie domyślnej wersji Javy

Jeśli masz zainstalowanych kilka JDK, o tym, która wersja startuje przy wywołaniu java, decyduje mechanizm alternatives. Najpierw wypisz wszystkie dostępne wersje:

update-alternatives --list java

Następnie wybierz interaktywnie tę, której chcesz używać:

update-alternatives --config java

Dlaczego nie warto już używać apt-key

Wiele starszych poradników dodaje zewnętrzne źródła poleceniem apt-key adv lub apt-key add. To polecenie jest uznawane za przestarzałe od czasu Debiana 11, ponieważ zapisany w ten sposób klucz staje się ważny dla wszystkich repozytoriów w systemie. Przejęte repozytorium zewnętrzne mogłoby dzięki temu podstawić także pakiety systemowe.

Nowoczesne podejście to dokładnie to pokazane powyżej: klucz trafia jako osobny plik do /etc/apt/keyrings/ i zostaje przypisany przez signed-by= we wpisie źródła dokładnie jednemu repozytorium.

Częste błędy i ich rozwiązania

„Unable to locate package openjdk-8-jre-headless” albo „openjdk-11-jre-headless”: To nie jest błąd twojej instalacji. Debian nie zawiera już w ogóle pakietu dla Javy 8, a pakiet dla Javy 11 tylko w wydaniu 11. Zainstaluj tę wersję z repozytorium Adoptium.

„Unable to locate package temurin-8-jre”: Repozytorium nie zostało jeszcze wczytane. Uruchom apt update i sprawdź poleceniem cat /etc/apt/sources.list.d/adoptium.list, czy na końcu wiersza stoi właściwa nazwa kodowa twojej wersji Debiana (na przykład bookworm albo trixie).

„NO_PUBKEY” albo błąd podpisu przy apt update: Klucz nie został poprawnie zapisany. Pobierz go ponownie do /etc/apt/keyrings/adoptium.asc i zwróć uwagę, żeby plik nie był pusty.

java -version pokazuje niewłaściwą wersję: Jako domyślna ustawiona jest inna instalacja Javy. Popraw to poleceniem update-alternatives --config java.

Najczęstsze pytania

Dlaczego apt nie znajduje openjdk-11-jre-headless na Debianie 12?
Bo tego pakietu już tam nie ma. OpenJDK 11 leży w oficjalnych repozytoriach wyłącznie w Debianie 11. Na Debianie 12 i Debianie 13 instalujesz Javę 11 z repozytorium Adoptium, pakietem temurin-11-jre.
Jak zainstalować Javę 8 na Debianie?
Dla Javy 8 nie ma pakietu w żadnej aktualnej wersji Debiana. Podepnij repozytorium Adoptium i zainstaluj temurin-8-jre, a do programowania odpowiednio temurin-8-jdk. Klucz podpisu trafia przy tym do /etc/apt/keyrings.
Którą wersję Javy dostanę przez default-jre-headless?
Metapakiet rozwiązuje się do domyślnej wersji twojej dystrybucji: Debian 13 daje Javę 21, Debian 12 daje Javę 17, a Debian 11 daje Javę 11. Przy Javie 8 nic to nie pomoże, tutaj bez Temurina się nie obejdzie.
Dlaczego nie powinienem już używać apt-key?
Klucz dodany przez apt-key obowiązuje dla wszystkich repozytoriów w systemie. Przejęte repozytorium zewnętrzne mogłoby dzięki temu podstawić także pakiety systemowe. Od Debiana 11 polecenie jest wycofywane, a nowoczesne poradniki zapisują klucz w /etc/apt/keyrings i wskazują go przez signed-by we wpisie źródła.
Czy w ogóle warto jeszcze używać Javy 8?
Tylko wtedy, gdy twoja aplikacja wyraźnie tego wymaga. Java 17, Java 21 i Java 25 dostają aktualizacje bezpieczeństwa znacznie dłużej. Sprawdź więc w dokumentacji swojego oprogramowania, czy obsługuje nowszą wersję Javy.

Java 8 Java 11 OpenJDK Eclipse Temurin Debian 13 Debian 12 Debian instalacja Javy