Minecraft exit code 255: the catch-all, so triage by evidence

Exit code 255 (the unsigned form of -1) is what launchers show when the Java process dies in a way that does not map to a tidier code: a hard JVM crash, a fatal error during early startup, or the process being killed. It carries no diagnosis of its own. The evidence lives in two places, the game log and the crash report files, and this page is a triage order for reading them.

Triage, in order

  1. Find the crash report. The crash-reports folder in the game directory holds timestamped reports for most hard crashes; the newest one's header names the failing component, a mod, the JVM, or graphics, in plain text.
  2. Check for an hs_err_pid file in the game directory. Its presence means the JVM itself crashed (native level), and its top frames usually point at a graphics driver or native library.
  3. Update the graphics driver if the report implicates anything graphical; JVM native crashes are disproportionately driver crashes.
  4. Binary-search mods if the crash report names a mod or the crash is modded-only: remove half, test, repeat.
  5. Verify the Java version matches the Minecraft version's expectation (Java 21 for 1.20.5+, Java 17 for most versions before it) if a custom runtime is set in the launcher.
  6. Test vanilla, fresh profile, no resource packs. A clean result localizes the fault to the modded setup; a crash there too points at drivers, hardware stability, or security software.

255 versus 1, in practice

Exit code 1 is the launcher catching an ordinary failed launch, usually a mod or configuration error the game logged politely. Exit code 255 tends to be ruder: the process died before it could explain itself, which is why crash reports and hs_err files, written by the runtime as it goes down, matter more than the log's tail. Treat 255 as 'read the crash paperwork first, guess second.'

Frequent 255s outside Minecraft too? If other games and programs also crash hard, stop treating this as a Minecraft problem. Failing RAM (test with a memory diagnostic), unstable overclocks, and dying drives produce exactly this pattern across software. Evidence from one game should not be stretched, but the same crash everywhere is one machine asking for help.

Common questions

The launcher says -1 instead of 255. Same thing? Yes. -1 and 255 are the same exit value shown signed and unsigned by different tools. Everything on this page applies to both.

No crash report was created. What does that mean? The process likely died before the crash handler could run, or was killed outright (by the OS for memory pressure, or by security software). Check the launcher's output log tail and your antivirus history, and watch system memory during launch.

Related

Minecraft exit code 1 · Minecraft exit code 0 · Minecraft GLFW error 65542 · Error 0xc0000005