Добро пожаловать на Craft‑Bukkit

Всё о Minecraft серверах: гайды, команды, скачивание сборок и полезные советы для администраторов и игроков.

Ошибка «Cannot invoke» и «NoSuchMethodError»: несовместимость API плагинов

wergio 24.07.2026 11:56 3
Ошибка NoSuchMethodError: как исправить несовместимость API плагинов на сервере Minecraft.

Введение: когда плагины воюют

Ошибки «java.lang.NoSuchMethodError» и «java.lang.NoClassDefFoundError» возникают, когда плагин пытается вызвать метод или класс из другого плагина (API), но не находит его. Это типичная проблема при использовании плагинов, зависящих от Vault, PlaceholderAPI, WorldGuard и других библиотек. В этом гайде — как диагностировать несовместимость API и исправить её.

Причина 1: Зависимый плагин не установлен

Плагину требуется Vault, но вы его не установили. При попытке вызвать метод Vault сервер выбрасывает NoClassDefFoundError.

Решение:

  • Внимательно читайте описание плагина на странице скачивания. Там указаны зависимости.
  • Установите все требуемые плагины-зависимости в папку plugins.

Причина 2: Версия зависимости устарела

Плагин A требует Vault 2.0, а у вас Vault 1.7. Метод, который вызывает плагин A, появился только в Vault 2.0. Сервер выбрасывает NoSuchMethodError.

Решение:

  • Обновите плагин-зависимость до последней версии.
  • Если плагин A старый и не работает с новой версией зависимости — найдите форк плагина или альтернативу.

Причина 3: Конфликт версий одной библиотеки

Два плагина используют одну библиотеку (например, библиотеку для работы с базой данных), но разных версий. Java загружает только одну версию — один из плагинов ломается.

Решение:

  • Используйте плагины, которые не встраивают библиотеки внутрь себя (shade), а используют общие библиотеки из папки libs.
  • Если конфликт неизбежен — ищите альтернативу одному из плагинов.

💡 Совет профи

Используйте плагин PluginManager для просмотра зависимостей. Команда /plugman info НазваниеПлагина покажет, какие библиотеки использует плагин и какие API он предоставляет. Это поможет быстро найти конфликтующие плагины при ошибках NoSuchMethodError.
← К списку статей

💬 Комментарии (0)

⏳ Все комментарии проходят модерацию

🔒 Войдите, чтобы оставить комментарий

😊 Пока нет комментариев. Будьте первым!