JSON - "Exception in server tick loop"
If your server doesn’t start and shows an error similar to the one below, it’s usually caused by a corrupted or malformed ops.json or whitelist.json file:
java.lang.NullPointerException: Exception in server tick loopat net.minecraft.server.v1_7_R3.JsonList.load(JsonList.java:171)The exact class name in your error (
v1_7_R3above) will vary depending on your server version and software, but the key part to look for isJsonList.load, that’s what tells you this is a player-list file problem, not something else.
Why This Happens
Section titled “Why This Happens”ops.json, whitelist.json, and banned-players.json are all stored in the same JSON-based format on your server. If one of these files becomes corrupted, for example from a crash while it was being written, a bad manual edit, or a failed import or restore, the server fails to parse it when loading at startup. Since this happens very early in the boot process, it crashes the entire server before it can even finish starting.
How to Fix the “Exception in Server Tick Loop” Error
Section titled “How to Fix the “Exception in Server Tick Loop” Error”- Stop your server from the Console page.
- Go to File Manager.
- Delete the following files:
ops.jsonwhitelist.jsonusercache.json
- Start your server.
Your server should now boot normally. These files will be recreated automatically as empty files once the server starts.
After Fixing It
Section titled “After Fixing It”Deleting these files clears your operator list, your whitelist, and your username cache, they don’t come back on their own, so you’ll need to set them up again:
- Re-add your operators using
op <username>for each player who had operator status. - Re-add your whitelist using
whitelist add <username>for each player, if you had whitelisting enabled. - The
usercache.jsonfile will rebuild itself automatically as players join, no action needed there.
If you keep running into this same error repeatedly after fixing it, it may be worth checking what’s causing the file to become corrupted in the first place, such as an unexpected crash or a plugin that’s writing to these files incorrectly. If you’re not sure, contact support with your server ID and we can help you investigate.