Minecraft server exit codes 1, 137 and 143
What Java exit codes 1, 137 and 143 mean for your Minecraft server, where to find the number in the panel, and how to fix a memory kill.
When a Minecraft server stops without you pressing Stop, Java ends with a number called the exit code, and that number narrows down why. The three you will meet most are 1, 137 and 143. The panel keeps the number in a log you download, and the table below says what each one means for your server.
Checked against Minecraft 26.3, the Java 25 and OpenJDK documentation and the Paper documentation, October 2026.
Where to find the exit code
The live Console hides it. It shows one of two plain notices instead:
- A red
Your server crashed - restarting automatically…means the exit code was not 0. - An amber
Your server stopped on its own - restarting automatically…means the exit code was 0, so the server ended itself on purpose. One common cause is a Minecraft EULA that was never accepted, so check that first. The Console asks for it with an Accept the Minecraft EULA prompt the first time you press Start.
The number itself is kept in the downloadable log:
- On the Console tab, press Download Log (the download icon on a phone).
- Pick Last hour. For an older crash pick Earlier boots (7 days), which keeps the first and last lines of each boot.
- Search the file for
Exit code:. TheOut of memory:line beside it saystrueorfalseand matters for 137.
What the common codes mean
Codes above 128 follow a convention that the shell and Java both use: 128 plus the signal number. SIGKILL is signal 9, which gives 137. SIGTERM is signal 15, which gives 143. Java's own signal handler exits with exactly that number after a terminate request, so it can run its shutdown hooks first.
Exit code 1
Scroll up from the exit code in the log and look for the last error before the server stopped.
- A crash report line (
This crash report has been saved to:) means Minecraft crashed. Follow Fix "Exception in server tick loop" crash. UnsupportedClassVersionErrormeans a jar was built for a newer Java than the one running. Our panel picks Java from your Minecraft version and shows it as "Runs on Java N" in JAR Manager, so look for a mod or plugin built for a newer Java than the one your server runs.- A mod or plugin error before the world loads is a mod problem. Disable the newest add-on from the Installed view of the Mods tab (Plugins on Paper, Purpur and Folia) and start again.
Exit code 137 and memory
A 137 with Out of memory: true means the server went over the memory your plan gives it. The system then kills the process, and Java gets no chance to write a crash report. The Paper documentation lists the same cause for a crash with no log.
Our start script already leaves room. On plans of 1 GB and up, the Java heap is set to your plan's RAM minus a margin of 10 percent, with the margin kept between 512 and 1536 MiB. Below 1 GB there is no margin. The margin is there because Java also uses memory outside the heap. Even so, the Paper documentation names a memory limit set too close to the Java heap maximum as a common cause of these kills, and says Java can use a little more than that maximum. To fix it:
- Open the Config Editor and lower View distance (chunks) and Simulation distance (chunks) under Performance.
- Remove or disable the heaviest add-ons. Why is my server lagging? Find the cause shows how to spot them.
- If it still happens, check the RAM Usage card on the Console tab and move up a plan: Upgrade or downgrade your plan.
You cannot change the Java memory flags yourself, so more RAM means a bigger plan. How much RAM does my Minecraft server need? has worked numbers.
With Out of memory: false the plan's memory limit was not what killed the process. Something sent the kill signal on purpose or from outside. Our Force stop button sends SIGKILL, and so does a Power action schedule on the Schedules tab set to Kill (force stop), so check whether either was used. If neither was, press Download Log and keep the file for support.
A line such as java.lang.OutOfMemoryError: Java heap space is a different failure, where Java itself ran out of heap. The fixes above help with it too.
Exit code 143
Something outside the game asked the process to end, and Java closed down in an orderly way. The panel's own Stop does not work this way: our server template stops the game by sending it the stop command, not a signal. So the SIGTERM came from outside the panel's own Stop. Docker's stop command is one source, because it sends SIGTERM first. If it repeats, press Download Log and keep the file for support.
Crashes inside Java itself
A crash in the Java runtime does not write a normal crash report. It leaves a file named hs_err_pid followed by a number, which Oracle's Java documentation says is created in the working directory of the process. Our start script runs from the server's top level, where start.sh sits, so look at the top level of the File Manager. If Java cannot write there, it falls back to the system temp folder, which you cannot see. Memory shortage is the most common cause.
The panel starts a crashed server again for you, unless it keeps crashing: if the last crash was only moments ago, it stops trying and prints Aborting automatic restart, last crash occurred less than N seconds ago. When it does restart, the newest log lines can belong to a second boot. Choose Last hour or Earlier boots (7 days) to see the first crash.
Was this guide helpful?
Related guides
Java 21 to Java 25 on your Minecraft server
Minecraft 26.1 needs Java 25. See which versions use which Java, how the panel switches it for you, and the safe way to move to 26.x in JAR Manager.
Fix ticking entity crashes on modded servers
A Ticking entity crash report means one entity keeps failing. Read the report, then update the mod, let Forge drop it, or delete it from the world.
Fix a Minecraft server that will not start
Read the Console for the first real error, match the message to a fix, and undo your last change in the safe order, from add-ons to backups.
