How to read Minecraft crash reports and latest.log
Find and read your server's latest.log and crash reports, spot the line that matters, and identify the plugin or mod that caused a crash.
Updated · 2 min read
When a Minecraft server crashes or misbehaves, the answer is almost always written in logs/latest.log or in a file in crash-reports. The trick is knowing where to look: the first error, and the Caused by lines under it.
Where the files are
Open the file manager:
| Path | What it contains |
|---|---|
logs/latest.log | Everything from the current or most recent run, the same as the console. |
logs/2026-10-14-1.log.gz | Older runs, compressed. Download and extract to read. |
crash-reports/crash-...-server.txt | A full report written when the server crashes hard. |
logs/debug.log (Forge) | Extra detail useful for mod crashes. |
hs_err_pid....log (server root) | Rare. Java itself crashed, usually memory related. |
The console in the Schokr panel shows live output, but latest.log keeps the full text after a restart, which is easier to search.
Reading latest.log
- Open
logs/latest.log. - Search for
ERROR,WARN,ExceptionorCaused by. - Start with the first error, not the last. Later errors are often side effects of the first one.
A typical error block looks like this:
[12:01:33 ERROR]: Error occurred while enabling ShopPlugin v2.1 (Is it up to date?)
java.lang.NoClassDefFoundError: net/milkbowl/vault/economy/Economy
at com.example.shop.ShopPlugin.onEnable(ShopPlugin.java:42)
...
Caused by: java.lang.ClassNotFoundException: net.milkbowl.vault.economy.Economy
How to read it:
- The first line names the plugin (
ShopPlugin) and what it was doing (enabling). - The exception type (
NoClassDefFoundError) says what went wrong. - The class name (
net.milkbowl.vault...) points to Vault, so Vault is missing. - The
atlines show where in the code it happened. Lines starting with a plugin's package name (herecom.example.shop) tell you which plugin is involved.
Reading a crash report
A crash report starts like this:
---- Minecraft Crash Report ----
// Who set us up the TNT?
Time: 2026-10-14 12:05:10
Description: Exception in server tick loop
java.lang.NullPointerException: Cannot invoke "..." because "..." is null
at com.example.mod.SomeBlockEntity.tick(SomeBlockEntity.java:88)
- Description gives the general situation, such as
Exception in server tick looporTicking entity. - The exception and first few
atlines show the code that failed. A mod's package name usually identifies the mod. - Further down, sections like Block entity being ticked or Entity being ticked give coordinates. This tells you where in the world the problem is.
- The System Details section lists Java version, memory and the loaded mods with versions.
Common patterns
| You see | It usually means |
|---|---|
UnsupportedClassVersionError | Wrong Java version. See Java version mismatch. |
OutOfMemoryError | Not enough memory. See memory and JVM flags. |
invalid dist DEDICATED_SERVER | Client-only mod on a server. See client vs server-side mods. |
FAILED TO BIND TO PORT | Port problem. See Failed to bind to port. |
Unsupported API version | Plugin built for a newer Minecraft. See plugin not loading. |
Ticking entity or Ticking block entity | A specific entity or block crashes every tick. Coordinates are in the report. |
Can't keep up! | Lag, not a crash. See Can't keep up. |
The server has stopped responding! | Watchdog: a tick took too long and the server stopped itself. A thread dump follows that shows what was stuck. |
Sharing logs for help
Logs can be long, so use a paste site made for Minecraft logs (such as mclo.gs) rather than screenshots. Before sharing, check for anything private, such as database passwords or tokens printed by plugins. Then post the link in the Schokr Discord.