// Minecraft

Serwer Minecraft crashuje? Jak czytać crash report

Serwer Minecraft crashuje? Jak czytać crash report

Gdy twój serwer Minecraft crashuje, przyczyna prawie zawsze jest zapisana czarno na białym w folderze crash-reports albo w logs/latest.log. Crash report Minecrafta czytasz w trzech krokach: spójrz na linijkę Description:, na pierwsze linijki stack trace'a i na ostatnie Caused by:. Tam zwykle znajdziesz plugin lub mod, który zawinił. Nie ma crash reportu? Zajrzyj wtedy do latest.log i do konsoli; często chodzi o pamięć.

Gdzie są crash report i logi?

Wszystko jest w głównym folderze twojego serwera, który otworzysz w menedżerze plików panelu gry albo przez SFTP.

  • crash-reports/: jeden plik na każdy crash, z godziną w nazwie, np. crash-2026-09-30_14.02.11-server.txt. Taki raport powstaje tylko wtedy, gdy Minecraft sam zauważy, że coś idzie nie tak.
  • logs/latest.log: log bieżącej sesji. Przy każdym starcie (i każdego nowego dnia) poprzedni zostaje spakowany, np. jako logs/2026-09-30-1.log.gz. Po restarcie crash jest więc w najnowszym .log.gz.
  • hs_err_pid<numer>.log: padła sama Java, a nie Minecraft. To rzadkość.

Nic nie znalazłeś? Zajrzyj do konsoli w panelu. Przy crashu pojawia się tam Detected server process in a crashed state!, a pod spodem Exit code i Out of memory. Jeśli widzisz Out of memory: true, serwer został zatrzymany, bo przekroczył swój limit pamięci, i Minecraft nie miał już szansy napisać raportu.

Struktura folderów serwera Minecraft z folderem crash-reports, folderem logs z latest.log i spakowanymi plikami .log.gz oraz plikiem hs_err_pid, z objaśnieniem, co każdy plik mówi o crashu
Tu szukasz, gdy twój serwer Minecraft crashuje: trzy miejsca w głównym folderze i konsola jako koło ratunkowe.

Jak czytać crash report Minecrafta

Skrócony przykład z serwera z modami:

---- Minecraft Crash Report ----
// Who set us up the TNT?

Time: 2026-09-30 14:02:11
Description: Ticking entity

java.lang.NullPointerException: ...
	at com.example.mobmod.ZombieAi.tick(ZombieAi.java:88)
	at net.minecraft.world.level.Level...

A detailed walkthrough of the error, its code path and all known details is as follows:
-- Head --
Thread: Server thread
-- Entity being ticked --
Details:
	Entity Type: minecraft:zombie (...)
	Entity's Block location: World: (120,64,-340), ...
-- System Details --
...
  1. Description to podsumowanie. Ticking entity, Ticking block entity, Exception in server tick loop albo Watching Server już wskazują kierunek.
  2. Linijka pod spodem to sam błąd, np. java.lang.OutOfMemoryError: Java heap space.
  3. Linijki at to stack trace; najwyższa pokazuje, gdzie coś poszło nie tak. net.minecraft to sam Minecraft, a io.papermc, org.bukkit, org.spigotmc, com.destroystokyo i ca.spottedleaf to Paper. Inna nazwa pakietu to zwykle plugin lub mod.
  4. Caused by: to przyczyna źródłowa; jeśli jest ich kilka, ostatnia jest najgłębsza. Linijki typu ... 12 more to powtórzenia.
  5. Bloki poniżej dają kontekst: przy ticking entity typ i współrzędne, a na samym dole, w System Details, wersję Javy, pamięć i flagi JVM.

Od 26.1 Minecraft Java nie jest już obfuskowany, więc także linijki Minecrafta w twoim stack trace mają czytelne nazwy klas.

Pięć najczęstszych przyczyn

1. Za mało pamięci

Jeśli widzisz java.lang.OutOfMemoryError: Java heap space, heap Javy jest pełny. To nie musi być wyciek; często heap jest po prostu za mały. Pomaga niższe view-distance i mniej załadowanych światów. Jeśli dalej jest ciasno, wybierz większy pakiet Minecraft.

Trudniejszy przypadek to crash bez raportu, z logiem, który nagle się urywa, i Out of memory: true w konsoli. Java poza heapem zużywa pamięć także m.in. na załadowane klasy i wątki. Jeśli heap może wypełnić cały pakiet, proces może przekroczyć limit i zostaje twardo zatrzymany. W MC-Node ustawiasz to zmienną startową Geheugenlimiet (%) (limit pamięci w procentach) w panelu: to część pamięci twojego pakietu, którą Java może wykorzystać jako heap, od 50 do 95. Puste pole oznacza 100%. Wartość w okolicach 85 zostawia zapas; ciężkie modpacki mogą potrzebować niższej. Potem zrestartuj serwer. Zobacz też ile RAM-u potrzebuje twój serwer.

2. Plugin lub mod, który nie pasuje do 26.3

Na Paper widzisz wtedy często Error occurred while enabling ... (Is it up to date?). Paper wyłącza wtedy ten plugin i działa dalej. Późniejsze błędy pluginów Paper zwykle loguje jako Could not pass event ... to <plugin>, bez crasha; plugin, przez który serwer się zawiesza, namierzysz przez watchdoga (przyczyna 4). Sprawdź na stronie pluginu, czy 26.3 jest wspierane. Uwaga: w chwili pisania Paper ma dla 26.3 tylko buildy alpha i beta; 26.2 ma stabilne. Co jeszcze psuje 26.3, przeczytasz w artykule Minecraft 26.3 a twój serwer.

3. Zła wersja Javy

Minecraft 26.x wymaga Javy 25. Serwer vanilla na Javie 21 wyrzuca UnsupportedClassVersionError z class file version 69.0 (Java 25) i only recognizes class file versions up to 65.0 (Java 21). Paper zgłasza w takim przypadku Minecraft 26.1 and newer requires running the server with Java 25 or above. Ten sam błąd przy jednym pluginie oznacza, że ten plugin oczekuje nowszej Javy. Wersję zmieniasz przez obraz Dockera w panelu: zmiana wersji Javy.

4. Watchdog: tick, który się zawiesza

Vanilla i NeoForge zgłaszają A single server tick took ... seconds (should be max ...) i Considering it to be crashed, server will forcibly shutdown. Granicą jest max-tick-time w server.properties, domyślnie 60000 milisekund. Paper wyłącza tego watchdoga i zamiast niego używa timeout-time w spigot.yml (domyślnie 60 sekund), z komunikatem The server has stopped responding! i zrzutem wątków (thread dump) w latest.log, bez crash reportu. Szukaj w nim nazw pluginów: Paper sam wskazuje na pluginy wysyłające zapytania HTTP lub MySQL i na zbyt duże operacje na świecie. Według Paper podniesienie granicy zamienia tylko crash na potężne skoki lagów.

5. Ticking entities i uszkodzone chunki

Przy Ticking entity lub Ticking block entity jeden mob, lej albo (często modowana) maszyna rzuca błąd w każdym ticku. Na vanilli i NeoForge serwer crashuje wtedy ponownie, gdy tylko ten fragment świata się załaduje. Raport podaje typ i współrzędne. Przywróć backup albo usuń ten chunk offline narzędziem społeczności MCA Selector (od wersji 2.9 obsługuje 26.3); to jednak kasuje wszystko w tym chunku. Paper tu nie crashuje: loguje Entity threw exception at lub BlockEntity threw exception at z lokalizacją i usuwa to entity lub block entity.

Uszkodzony plik regionu (r.x.z.mca, 32 na 32 chunki), np. po twardym zatrzymaniu podczas zapisu, zwykle nie powoduje crasha serwera. Vanilla loguje Failed to load chunk, Paper ... chunk data will be lost, a ten chunk jest generowany od nowa. To, co tam było, przepada; przywróć wtedy backup.

Krok po kroku do winowajcy

  1. Najpierw zrób backup, nawet jeśli serwer nie działa.
  2. Przeczytaj najnowszy crash report i koniec latest.log (albo najnowszego .log.gz). Szukaj ERROR i WARN tuż przed crashem.
  3. Cofnij ostatnią zmianę. Aktualizacja, nowy plugin albo inny obraz Javy to podejrzany numer jeden.
  4. Dziel na pół. Brak wyraźnej nazwy? Przenieś połowę pluginów (lub modów) do folderu takiego jak plugins-wylaczone i uruchom serwer. Crash zniknął: winowajca jest w przeniesionej połowie; jeśli nie, to w reszcie. Powtarzaj, aż zostanie jeden kandydat. Mody bez swojego moda bazowego się nie uruchomią; to inny błąd.
  5. Udostępniaj log przez mclo.gs zamiast wklejać go na Discordzie: dostajesz krótki link, a adresy IP są automatycznie usuwane. Hasła i tokeny sprawdź sam.

Kiedy to nie jest crash

  • Can't keep up! Is the server overloaded? to lag: serwer nie nadąża, ale działa dalej. Zobacz co znaczą TPS i MSPT.
  • Gracze wylatują z serwera, a konsola działa dalej: to zwykle wina klienta albo połączenia.

Kiedy założyć ticket?

Jeśli widzisz Out of memory: true, choć limit pamięci jest dobrze ustawiony, serwer crashuje, zanim cokolwiek trafi do latest.log, albo dzielenie na pół nic nie daje, załóż ticket. Podaj, o który serwer chodzi, o której był crash, linki mclo.gs do crash reportu i latest.log oraz co zmieniłeś tuż przedtem.

Najczęściej zadawane pytania

Gdzie znajdę crash report mojego serwera Minecraft?

W folderze crash-reports w głównym folderze serwera, z datą i godziną w nazwie, np. crash-2026-09-30_14.02.11-server.txt. Log jest w logs/latest.log; jeśli serwer już się zrestartował, zajrzyj do najnowszego pliku .log.gz.

Dlaczego nie ma crash reportu, choć mój serwer crashuje?

Wtedy proces zatrzymał się, zanim Minecraft zdążył napisać raport, często dlatego, że przekroczył limit pamięci pakietu; konsola pokazuje wtedy Out of memory: true. Obniż w takim razie Geheugenlimiet (%) (limit pamięci) w panelu albo wybierz większy pakiet.

Jakiej wersji Javy potrzebuję do Minecrafta 26.3?

Javy 25: tak podają dane wersji Mojanga dla 26.3, a Paper wymaga jej od 26.1. Na starszej Javie zobaczysz UnsupportedClassVersionError z class file version 69.0, a na Paper komunikat, że potrzebna jest Java 25.

Czy mogę ustawić max-tick-time na -1 przeciw crashom watchdoga?

Na vanilli i NeoForge tak, ale to niczego nie rozwiązuje: zawieszony serwer po prostu dalej wisi. Paper wyłącza tego vanillowego watchdoga; tam obowiązuje timeout-time w spigot.yml. Lepiej ustal, co blokuje tick.

Czytaj dalej

// WYPRÓBUJ SAM
Twój serwer Minecraft online w 60 sekund
Zobacz pakiety →