Diagnosing plugin conflicts by halves

When one plugin out of twenty is crashing your server, don't test them one at a time. Binary-search by halves with the File Manager and find the culprit in a few restarts instead of twenty.

Your server ran fine, you added a few plugins, and now it crashes on start or misbehaves — and you have no idea which plugin did it. Testing them one at a time is slow and demoralising. There's a much faster way borrowed from programming: binary search. Split the plugins in half, test, and each round throws away half the suspects. Twenty plugins take about five restarts instead of twenty.

At a glance
You need The File Manager and the Console
Plan Any
Time Fifteen minutes for most servers

First, let the console tell you

Before the search, check whether the answer is already on screen. When a plugin crashes the server, the Minecraft console's plugin helper points at the likely file, and the Errors tab of the console filters the log down to just the failures. A stack trace usually names the offending plugin's package — a line like at com.someplugin.Main... is naming someplugin. If the console already tells you which plugin, skip straight to the fix. The binary search below is for the harder cases where nothing obvious is named — a silent misbehaviour, or two plugins that only clash together.

The binary-search method

The idea: with the problem reproducing, remove half the plugins. If the problem goes away, the culprit is in the half you removed. If it stays, it's in the half that's left. Either way you've halved the suspects. Repeat until one plugin is left holding the blame.

Set up once:

  1. Take a backup, or at least note your full plugin list.
  2. In the File Manager, make a folder outside /plugins to park disabled jars — call it plugins-off in your server's root. (Minecraft only loads what's inside /plugins, so anything here is switched off but safe.)

Then loop:

  1. Move half the .jar files from /plugins into plugins-off. Select them (multi-select), use Cut, open plugins-off, and Paste — or use the Move action.
  2. Restart and check: does the problem still happen?
    • Gone → the culprit is in the half you moved out. Move that half back, and this time move out half of those.
    • Still there → the culprit is in the half still loaded. Move out half of the remaining jars.
  3. Repeat, halving the suspect group each round, until you're down to one .jar. That's your culprit.
Round Plugins loaded Problem? Next
Start 16 Yes Move out 8
1 8 No Culprit in the 8 you removed — bring back, remove half
2 12 (removed 4 of them) Yes It's in these 4 — remove 2
3 14 (removed 2) Yes One of these 2 — remove 1
4 15 No The last one you removed is it

Four restarts to find one plugin among sixteen.

The trap: dependencies

Some plugins need another plugin to run. Vault, an economy plugin, a permissions plugin, or an API library like PlaceholderAPI are common dependencies. If you move out a dependency but leave the plugins that rely on it, those will now error too — and you'll chase a fake culprit.

Two habits avoid this:

  • Keep a plugin and its hard dependencies together in the same half. If the console says depends on Vault, move Vault with it.
  • Trust the console. A missing-dependency message (Unknown/missing dependency: Vault) is telling you what you removed, not what's broken. Put it back.

🎯 Good to know: Not every "conflict" is a bug in one plugin. Two plugins that do the same job — two economy plugins, two chat formatters, two that claim /home — will fight. If your search lands on a plugin that's clearly duplicating another, the fix is to pick one.

You've found it — now what

Once one .jar is confirmed as the cause:

  1. Update it. Most conflicts are version mismatches. Get the current build that matches your Minecraft version — see Updating plugins safely.
  2. Check its config. Sometimes a setting (a duplicated command, a wrong world name) is the real problem, not the jar. See YAML without tears.
  3. Report it to the plugin's author with the console error — if it's a genuine incompatibility, they'll want to know.
  4. Replace it if it's abandoned or truly incompatible. There's usually an alternative on the Plugins page.

⚠️ Heads up: When you're done, move every innocent .jar back from plugins-off into /plugins and restart. It's easy to fix the problem and forget half your plugins are still switched off.

Prevention

The reason this happens is adding plugins in a batch. Going forward, add one plugin at a time — install, restart, confirm it loaded cleanly, test it — so a new problem always points at the plugin you just added. See Install plugins.

Verify it works

With the culprit removed (or updated), the server starts cleanly and the misbehaviour is gone. Run /plugins and confirm the rest of your set is green — and that everything you parked in plugins-off is back in /plugins.

Troubleshooting

  • Everything errors after moving jars — you moved out a dependency (Vault, PlaceholderAPI, a permissions plugin). Move it back; it wasn't the culprit.
  • Problem never goes away, even with /plugins empty — then it isn't a plugin. Look at the world, the server software version, or a crash report.
  • Two suspects, both needed — they genuinely conflict. Check each for a compatibility setting, update both, or replace one.

Next steps

Was this guide helpful?