Unsupported Class File Version

A plugin or mod fails to load with 'Unsupported class file major version XX'. The jar was compiled for a newer Java than your server is running, so the older Java cannot read its classes.

What does this error mean?
Every compiled class carries a 'major version' tied to the Java that built it (52 = Java 8, 61 = Java 17, 65 = Java 21, and so on). When that number is higher than your runtime supports, Java rejects the class. This is about a plugin/mod/library, not the server jar itself.
Unsupported class file major version XX
Most Common Causes
  • A plugin/mod built for a newer Java than the server uses.
  • The server running an older Java than the plugin requires.
  • A bundled library compiled for a newer Java.
  • Mixing modern plugins with a legacy Java install.
  • A panel launching with an outdated Java image.
How To Diagnose
  1. Read the major version number in the error and map it to a Java release.
  2. Run 'java -version' to see your current Java.
  3. Check the plugin/mod page for its required Java.
  4. Identify which jar (plugin, mod, or library) triggered it.
Recommended Fixes
  • Update Java
    Install the Java version the plugin/mod needs (and ensure the server launches with it).
  • Use a matching build
    Alternatively, install a plugin/mod build compiled for your current Java.
  • Set the panel Java image
    On a panel, select the Docker/Java image with the right Java version.
  • Align everything
    Keep Java new enough for all your plugins/mods, mind your Minecraft version's own Java needs too.
Frequently Asked Questions

The major version maps to Java: 52=8, 55=11, 61=17, 65=21. A higher number than your runtime causes this error.

Similar idea, but here it is a plugin/mod/library that needs newer Java, not the server jar itself.

Updating Java is usually best (and often required by newer Minecraft too), but you can use an older plugin build if needed.