NoSuchFieldError
字段缺失错误:库与插件版本不匹配、如何找出罪魁祸首以及如何修复。
更新于 2026年8月13日
java.lang.NoSuchFieldError: PROTOCOL_VERSION
代码访问了已加载版本库中不存在的类字段。在含义上,这与 NoSuchMethodError 相近。
原因
几乎总是版本不匹配:
- 插件是针对较新版本的库构建的,但安装的是较旧版本;
plugins中同时存在同一库的两个版本;- 库被打包在某个插件内部,并与单独安装的库发生冲突。
如何处理
- 根据堆栈跟踪中的字段名和包名确定是哪个库。
- 将其更新到插件所需的版本。
- 检查
plugins中是否有重复的.jar文件——新旧版本并存。 - 如果打包的库与外部库发生冲突,请移除单独安装的那个,或查阅插件文档。
常见元凶
ProtocolLib、PlaceholderAPI、Vault、Adventure/MiniMessage、Kotlin 库——ProtocolLib、Vault、PlaceholderAPI。
Minecraft 托管您离线时服务器仍在运行创建服务器
