Menu

Guidefor server owners4 min read

NoClassDefFoundError: net/kyori/examination/Examinable on Paper 26.2, and the Adventure 5 break behind it

Paper 26.2, Purpur and Velocity 3.5.0 moved from Adventure 4 to Adventure 5. Plugins compiled against Adventure 4, or bundling a library that was, stop loading. The exact errors, why a server owner cannot fix it, and what a plugin developer changes.

The errors

Three different messages, one cause. If your console shows any of these on Paper 26.2, Purpur 26.2, or another Paper fork on that version, you are looking at the same problem.

java.lang.NoClassDefFoundError: net/kyori/examination/Examinable
java.lang.NoSuchMethodError: 'net.kyori.adventure.text.BuildableComponent
  net.kyori.adventure.text.TextComponent$Builder.build()'
java.lang.NoSuchMethodError: 'net.kyori.adventure.inventory.Book
  org.bukkit.inventory.meta.BookMeta.pages(...)'

Server owners rarely quote those. They report it as the plugin refusing to enable on 26.2, or as the server saying the plugin is not up to date. That second phrasing is where people go wrong, because it sounds like a download will fix it, and usually there is no fixed download yet.

What actually changed

Adventure is the text component library that Paper, Velocity and most of the plugin ecosystem use for chat, item names, GUI titles and books. Paper moved it from version 4 to version 5 in pull request 13993, titled "Update adventure to 5.2.0", merged into the 26.2 development branch on 27 June 2026. Purpur and other Paper forks inherit that change automatically. Velocity did the same in pull request 1774 on 10 July 2026, landing in 3.5.0.

Two removals in Adventure 5 cause almost all of the breakage. From Adventure's own 4.x migration guide:

BuildableComponent has been removed. You can now obtain a ComponentBuilder directly from a Component using Component#toBuilder.

and

As most of the internal implementation of Adventure is now using records, we no longer need to use the Examination library for toString generation. The Examination library has been entirely removed from Adventure and is no longer a transitive dependency.

The second one is the wide net. Component used to extend net.kyori.examination.Examinable. That means any class compiled against Adventure 4 that so much as accepts a Component records a reference to net/kyori/examination/Examinable in its bytecode, without the author ever writing that package name. Adventure 5 dropped the artifact, Paper no longer ships it, and the class is not there at load time.

The BuildableComponent case is subtler. Under Adventure 4, calling build() on a component builder compiled down to a method whose erased return type was BuildableComponent. Remove the interface and that method signature disappears, so old bytecode asks for a method the new jar does not have. Adventure 5.2.0 walked this one back and restored BuildableComponent to the hierarchy as a deprecated interface, precisely because of the breakage, with removal now scheduled for 6.0. Builds carrying an earlier Adventure 5 still fail, which is what a BetterHud report against Purpur 26.2 shows.

The BookMeta.pages(...) failure is the same story at the Bukkit API layer, tracked in Paper issue 14030, where Adventure based setters that existed on 26.1.2 are gone on 26.2.

This is not one broken plugin

A code search across public repositories in 2026 found 61 hitting the net/kyori/examination signature. The usual carrier is not the plugin itself but PacketEvents, which a great many plugins shade into their own jar. One outdated bundled copy breaks a plugin whose own source was never the problem. AntiSeedCracker issue 2 is a clean example: the plugin failed with the Examinable error purely because it bundled PacketEvents 2.13.0.

Velocity's side got a pointed complaint about this. Issue 1842 argues that Adventure 4 was a public API dependency and that changing it broke the expectation that plugins built against 3.0 or 3.2 keep working on later 3.x releases, with the change never flagged as breaking. It is closed now, but it is the clearest statement of why so many people were caught out at once.

If you run the server

You cannot fix this from the server side, and that is worth saying plainly. The mismatch lives inside a compiled jar you did not build.

Your options, in order of how much I would recommend them:

  1. Wait for the plugin update. This is usually right. The fix is a recompile against Adventure 5 for most plugins, or a bumped PacketEvents version for the shading cases, and it lands quickly once the author notices.
  2. Downgrade to Paper 26.1. The only genuine server side workaround. Adventure 4 comes back and the plugin loads. Take a backup first, and check whether other plugins have already moved to 26.2 only builds.
  3. Hand patching the jar. For the Examinable case specifically, adding a libraries: block to the plugin's plugin.yml declaring net.kyori:examination-api:1.3.0 and examination-string:1.3.0 makes the server download the missing artifacts, and the AntiSeedCracker reporter confirmed it works. It is still editing somebody else's jar, and it will be undone by the next update.

If you write the plugin

Rebuild against Adventure 5. Replace BuildableComponent usage with Component#toBuilder, which now lives on Component itself and removes the cast. Note that NBTComponent takes one type argument instead of two. If you shade PacketEvents or anything else that touches components, bump it to a build compiled against Adventure 5, since your own recompile does nothing for code you bundled.

For the general shape of version breakage and how to avoid the next one, see what breaks plugins when Minecraft gets a new drop. This page is the specific instance. That page is the pattern.

Frequently asked

Can I fix this myself as a server owner?

Not properly. The broken code is inside the plugin jar, compiled against a library version the server no longer ships. The only real server side option is running Paper 26.1 until the plugin publishes a build for 26.2. Everything else is either a plugin update or a hand edit of somebody else's jar.

Is this the plugin author's fault or Paper's fault?

Neither exactly. Adventure 5 removed things it had formally deprecated, Paper took the new version, and plugins compiled before the change kept working right up until the server underneath them changed. The one fair criticism, raised on Velocity's own tracker, is that a public API dependency changed major version without being called out as a breaking change in advance.

Why does the error mention net.kyori.examination when my plugin never used it?

In Adventure 4, Component extended net.kyori.examination.Examinable. Any class compiled against Adventure 4 that touches a Component carries that reference in its constant pool whether the author ever typed the name or not. Adventure 5 rewrote those internals to use records and dropped the Examination library entirely, so the class is simply not on the server classpath any more.

Which plugins are affected?

Anything compiled against Adventure 4 and not yet rebuilt, plus anything shading a library that was. PacketEvents is the most common carrier, because a large number of plugins bundle it, so one outdated bundled copy breaks plugins whose own code was fine.

Does downgrading Paper actually work?

Yes, going back to 26.1 restores Adventure 4 and the plugin loads again. Take a backup first, and check the rest of your plugin list, because plugins that already shipped 26.2 builds may not run on 26.1.

Is Velocity affected too?

Yes. Velocity moved to Adventure 5.2.0 in pull request 1774, merged on 10 July 2026, shipping in 3.5.0. Proxy plugins compiled against Velocity 3.4 or earlier hit the same class of failure.

Space NodePartner

Host Minecraft servers

Deploy a Minecraft server in under a minute. Installed, tuned and ready to play.

  • Instant deployment
  • Automatic updates
  • Ryzen CPUs
  • NVMe SSD
Deploy a serverFrom €0.90 per GB

Referenced on this site

Last reviewed 2026-08-06. Version data on this site updates automatically; this guide is reviewed by hand when the ecosystem changes.

Is this information wrong or missing something? .