Dlaczego wersja Javy decyduje, czy serwer działa
Każdy skompilowany plik Javy niesie liczbę, która mówi, dla jakiej Javy go zbudowano. Środowisko czyta pliki do własnego numeru i odrzuca wszystko nowsze. Gdy Mojang przenosi Minecrafta na nowszą Javę, pliki serwera dostają wyższy numer, a starsze środowisko zatrzymuje się na pierwszym pliku, który próbuje wczytać.
W drugą stronę zwykle działa: nowsze środowisko czyta starsze pliki. Dlatego wymaganie dla wersji Minecrafta to minimum. Wyjątkiem są stare zestawy: Forge dla 1.12.2, który oczekuje wnętrza Javy 8 i wraca niżej na tej stronie, oraz starsze buildy Spigota i Papera, takie jak 1.16.5 i 1.17.1, które sprawdzają wersję Javy przy starcie i zatrzymują się, gdy jest nowsza, niż oczekują.
Pluginy i mody podlegają tej samej zasadzie osobno. Serwer może działać na dokładnie właściwej Javie i mimo to odrzucić jeden plugin, który autor zbudował dla nowszej.
Java dla każdej wersji Minecrafta
| Minecraft Java Edition | Minimalna Java | Wersja pliku klasy | Pierwszy snapshot z tym wymaganiem |
|---|---|---|---|
| 26.1, 26.1.1, 26.1.2 i 26.2 | Java 25 | 69 | 26.1-snapshot-1, grudzień 2025 |
| 1.20.5, 1.20.6 i każde wydanie 1.21 do 1.21.11 | Java 21 | 65 | 24w14a, kwiecień 2024 |
| od 1.18 do 1.20.4 | Java 17 | 61 | 1.18-pre2, listopad 2021 |
| 1.17 i 1.17.1 | Java 16 | 60 | 21w19a, maj 2021 |
| od 1.12 do 1.16.5 | Java 8 | 52 | 17w13a, marzec 2017 |
Na podstawie danych wersji, które Mojang publikuje dla każdego wydania. Kandydaci do wydania 26.3 wciąż wymagają Javy 25. Wersje sprzed 1.12 zbudowano dla starszej Javy i też startują na Javie 8.
Dwie granice łapią ludzi. Skok na Javę 21 przyszedł z 1.20.5, a nie z 1.21, więc serwer przechodzący z 1.20.4 na 1.20.6 potrzebuje nowego środowiska, choć wygląda to na małą poprawkę. A 1.17 to jedyna linia, która stoi wyłącznie na Javie 16; już jedno wydanie później 1.18 wymaga 17.
To, co zaleca Paper, bywa wyższe
Projekt Paper publikuje własną tabelę zalecanych środowisk i przy starszych wersjach celuje powyżej minimum gry: Java 11 dla Papera od 1.12 do 1.16.4, Java 16 dla 1.16.5, Java 17 od 1.17 do 1.19 i Java 21 dla wszystkiego od 1.20 do 1.21.11. Od 26.1 obie strony zgadzają się na Javę 25. Minimum to to, czego serwer potrzebuje do startu; tabela Papera to środowisko, które jego własna dokumentacja zaleca dla tej wersji.

Rozszyfrowanie błędu unsupported class file version
Konsola
java.lang.UnsupportedClassVersionError: ... has been compiled by a more recent version
of the Java Runtime (class file version 65.0), this version of the Java Runtime only
recognizes class file versions up to 61.0To brzmienie jest takie samo na Javie 8, 17, 21 i 25. Kropki zastępują nazwę pliku, który zawiódł, zapisaną jako ścieżka z ukośnikami. Jej pierwsze części to zwykle domena autora i nazwa projektu, co już mówi, czy winny jest sam serwer, czy jeden dodatek.
Weź pierwszą liczbę i odejmij 44
65 minus 44 to 21. Plik zbudowano dla Javy 21. Zasada działa dla każdego nowoczesnego wydania: 52 to Java 8, 69 to Java 25.
To samo zrób z drugą liczbą
61 minus 44 to 17. Serwer działa teraz na Javie 17.
Porównaj obie z tabelą powyżej
Jeśli pierwsza liczba pasuje do Twojej wersji Minecrafta, środowisko jest za stare dla serwera. Jeśli pierwsza liczba jest wyższa, niż potrzebuje Twoja wersja, jeden plugin albo mod zbudowano dla nowszej Javy.
Znajdź plik
Na Paperze linijki wokół błędu zaczynają się od
Could not loadi podają jar w folderzeplugins. Na serwerze z modami loader podaje mod, gdy wymienia, co zawiodło.
| Liczba w błędzie | Java | Gdzie ją spotkasz |
|---|---|---|
| 52 | Java 8 | Serwery od 1.12 do 1.16.5 i pluginy, które wciąż celują w stare wersje |
| 55 | Java 11 | Pluginy zbudowane dla Javy 11; żadne wydanie Minecrafta jej nie wymaga |
| 60 | Java 16 | 1.17 i 1.17.1 |
| 61 | Java 17 | od 1.18 do 1.20.4 oraz dodatki takie jak ViaVersion 5 |
| 65 | Java 21 | od 1.20.5 do 1.21.11 |
| 69 | Java 25 | 26.1 i nowsze |
| 70 | Java 26 | Wydana w marcu 2026; żadne wydanie Minecrafta jej nie wymaga |

Gdy serwer mówi to prostymi słowami
Niektóre oprogramowanie serwera sprawdza to, zanim cokolwiek wczyta. Paper dla 26.1 i nowszych zatrzymuje się na starszym środowisku z komunikatem Minecraft 26.1 and newer requires running the server with Java 25 or above. Fabric czyta wersję pliku klasy gry i zamienia ją na wymaganie java, więc zgłasza niespełnioną zależność zamiast surowego błędu.
Pluginy i mody zbudowane dla nowszej Javy
To przypadek, w którym serwer działa, a jedna rzecz nie. Typowym przykładem jest ViaVersion: od wydania 5.0, tego, które przyniosło obsługę klientów 1.21, wymaga Javy 17. Wrzuć go na serwer 1.16.5, który działa na Javie 8, a log pokaże class file version 61.0 wobec 52.0.
- Użyj wydania zrobionego dla Twojej wersji. Modrinth podaje wersje Minecrafta dla każdego pliku, a katalogi w zakładkach „Pluginy” i „Mody” szukają buildu pasującego do typu i wersji Twojego serwera.
- Zostań przy starszym wydaniu dodatku, gdy najnowsze porzuciło Twoją Javę.
- Przenieś cały serwer na nowszą wersję Minecrafta, gdy potrzebny dodatek istnieje tylko tam. Java idzie w górę razem z nią.
- Poszukaj alternatywy, która wciąż obsługuje Twoją wersję, gdy żadne z powyższych nie wchodzi w grę.
Przy modach pierwsza liczba prawie zawsze wskazuje inną wersję Minecrafta, bo mod budowany jest pod jedno wydanie gry i dziedziczy jego Javę. Błąd 69.0 na serwerze 1.21.1 oznacza, że ktoś włożył do folderu mods mod dla 26.1. Więcej o pluginach, które nie chcą się wczytać, jest w poradniku o wczytywaniu pluginów, a łączenie wersji graczy opisuje poradnik o ViaVersion.
Stary Forge chce dokładnie Javy 8
Forge dla 1.12.2 startuje przez LaunchWrapper, który zakłada class loader używany w Javie 8. Java 9 zastąpiła ten class loader, więc na czymkolwiek nowszym serwer zatrzymuje się z ClassCastException wspominającym URLClassLoader. Tutaj nowsza Java naprawdę jest gorsza. Zostaw pole wersji Minecrafta na dokładnie starej wersji, żeby serwer został na Javie 8.
Gracze nigdy nie instalują do tego Javy
Oficjalny launcher czyta, jakiego środowiska potrzebuje każda wersja Minecrafta, i sam je pobiera, tak samo dla Windows, macOS i Linuksa. Ktoś, kto rano gra na 1.16.5, a wieczorem na 26.2, dostaje z launchera Javę 8 i Javę 25, nie ruszając żadnego ustawienia. Osobno zainstalowana Java na komputerze nie jest grze potrzebna.
Między graczem a Twoim serwerem musi się zgadzać wersja Minecrafta, a nie Java. Java na komputerze gracza i Java pod Twoim serwerem nigdy się nie spotykają, więc nie muszą być takie same. Blokuje ich inna wersja Minecrafta, chyba że plugin taki jak ViaVersion łączy obie. Jeśli gracze nie mogą dołączyć po zmianie wersji, poradnik o połączeniu przechodzi przez komunikaty, które widzą.
Jak nasz panel wybiera środowisko Javy
W panelu celowo nie ma ustawienia Javy. Środowisko podąża za wersją Minecrafta ustawioną dla serwera. W zakładce „Ustawienia” karta „Oprogramowanie serwera” zawiera dwie rzeczy: „Typ serwera” i „Wersja Minecrafta”. Java wynika z tej drugiej, według tych samych granic co tabela na tej stronie.
| Co | Kto decyduje | Gdzie |
|---|---|---|
| Wersja Minecrafta | Ty | Zakładka „Ustawienia”, pole „Wersja Minecrafta” |
| Typ serwera | Ty | Zakładka „Ustawienia”, „Typ serwera” |
| Środowisko Javy | Podąża za wersją | Nigdzie nie ustawia się go osobno |
| Wersja i loader paczki CurseForge albo FTB | Paczka | Zakładka „Mody”, przy instalacji paczki |
- Pole przyjmuje `latest` albo numer wydania, na przykład
1.21.4albo26.2. Wszystko inne, także snapshoty i kandydaci do wydania, zostaje odrzucone komunikatemUse latest or an exact version such as 1.21.4 or 26.2. - `latest` oznacza Javę 25, bo najnowsze wydanie jej potrzebuje. To pułapka dla serwera, którego pliki są naprawdę dla starszej wersji: wpisz wtedy dokładny numer.
- Java zmienia się, gdy zapiszesz nową wersję. Panel mówi wtedy, żeby zrestartować serwer i zastosować zmiany, które tego wymagają.
- Zmiana typu serwera zachowuje wersję, a nowy typ startuje na Javie, której ta wersja potrzebuje. Zmiana zatrzymuje serwer i najpierw robi kopię zapasową; w pakiecie bez miejsc na kopie zaznaczasz pole, żeby kontynuować bez niej.
- Instalacja paczki CurseForge albo FTB z zakładki „Mody” ustawia wersję Minecrafta, dla której zrobiono paczkę, a Java idzie za nią.
Panel wybiera najniższą Javę, której potrzebuje Twoja wersja, a nie najnowszą dostępną. Dzięki temu świat Forge 1.12.2 zostaje na Javie 8, gdzie działa, a serwer 26.2 i tak trafia na Javę 25. Wybór między samymi typami serwera opisują porównanie Paper, Purpur i Spigot oraz porównanie loaderów modów.

Naprawa niedopasowania w naszym panelu
Wylicz obie liczby
Odejmij 44 od każdej liczby w błędzie i zanotuj, jaki plik podaje. Wiesz teraz, czego chce plik i co ma serwer.
Serwer za stary sam dla siebie
Gdy pierwsza liczba należy do Twojej własnej wersji Minecrafta, pole wersji prawdopodobnie nie mówi, na czym naprawdę działa serwer, na przykład po ręcznym wgraniu paczki albo jara przez zakładkę „Pliki”. Wpisz dokładną wersję w „Wersja Minecrafta”, zapisz i zrestartuj.
Jeden dodatek za nowy
Gdy pierwsza liczba jest wyższa, niż potrzebuje Twoja wersja, zastąp ten plugin albo mod buildem dla Twojej wersji Minecrafta albo podnieś serwer do wersji, dla której zrobiono dodatek.
Wciąż się nie zgadza
Jeśli liczby nie pasują do żadnego z tych przypadków, wyślij nam wersję Minecrafta, typ serwera i linijki konsoli wokół błędu.
Sprawdzanie, na jakiej Javie działa serwer
Na hostowanym serwerze nie uruchomisz java -version, ale konsola mówi to przy starcie. Paper wypisuje środowisko w jednej ze swoich pierwszych linijek, a po nim build i wersję Minecrafta:
Konsola, Paper
Running Java 21 (OpenJDK 64-Bit Server VM ...) on Linux ...
Loading Paper ... for Minecraft 1.21.4Liczba zaraz po Running Java to wersja główna, ta, której używają tabele na tej stronie. Serwery Forge startujące przez ModLauncher zapisują linijkę z starting: java version i pełną wersją środowiska. Przeszukaj logi w zakładce „Konsola” pod kątem java, żeby po restarcie szybko znaleźć którąś z tych linijek.
Napisane i sprawdzone przez zespół Lodehost, ostatnia weryfikacja 14 września 2026.




