Minecraft Руководство

Как найти конфликт плагинов Paper и не повредить мир

Найдите конфликт Paper-плагинов по журналу и проверьте его на изолированной копии мира.

Как найти конфликт плагинов Paper и не повредить мир

Если Paper запускается, но команда плагина падает или сервер начал сбоить после обновления, не удаляйте JAR-файлы и папки plugins наугад. Сначала сохраните исходное состояние, разберите первую содержательную ошибку в журнале, а взаимодействие плагинов проверяйте на изолированной копии.

Инструкция относится к Minecraft Java Edition и Paper. Названия пунктов меню, панель управления и расположение файлов зависят от хостинга. Плагины получают широкий доступ к машине сервера, поэтому используйте только доверенные источники и сохраняйте конфигурации и данные плагинов вместе с миром.

Сохраните исходное состояние#

Запишите точные версии Minecraft, Paper, Java и недавно изменённых плагинов. Сохраните текст ошибки и время, когда она впервые появилась. Если сервер работает, остановите его штатно из консоли командой stop и дождитесь завершения процесса. Простое копирование активного мира может пропустить последние изменения.

Сделайте полную отдельную копию каталога сервера: миров, server.properties, конфигураций, JAR-файлов, локальных баз и файлов плагинов. Проверьте, что копия содержит три измерения и доступна только администраторам. Плагины могут хранить часть данных во внешней SQL-базе, Redis или веб-сервисе — инвентаризируйте такие подключения отдельно. Не направляйте тестовую копию в рабочую базу, не отправляйте реальные вебхуки и не запускайте два экземпляра под одной серверной идентичностью.

Если сервер размещён на вашем VPS, управлять собственной инфраструктурой можно через Nexardo. Это не заменяет независимую резервную копию мира и данных плагинов.

Сначала проверьте журнал и версии#

Откройте logs/latest.log и найдите первую ошибку, относящуюся к плагину, а не только последние строки перед остановкой. Официальное руководство Paper по диагностике плагинов советует начинать именно с журнала. Затем проверьте, что JAR действительно является плагином Paper/Bukkit, полностью скачан и предназначен для вашей версии сервера. Мод Fabric или Forge в каталоге Paper не заработает.

В консоли сервера команда plugins показывает список загруженных плагинов; /version ИмяПлагина помогает сверить версию конкретного плагина. Зелёный статус означает успешную загрузку, но не гарантирует, что каждая команда или функция работает правильно. Для зависимостей и порядка загрузки Paper также предоставляет /paper dumpplugins, описанную в справочнике команд.

Частые причины, которые важно отделить от конфликта:

  • в начале журнала указана отсутствующая зависимость — установите совместимую версию нужного плагина;
  • Paper сообщает Invalid plugin.yml — проверьте, что файл не является модом, HTML-страницей ошибки или повреждённой загрузкой;
  • сообщается об ambiguous plugin name — в plugins остались два JAR одного плагина; оставьте один выбранный релиз;
  • ошибка UnsupportedClassVersionError указывает на несовпадение Java и требований сервера;
  • проблема появилась после смены версии Paper — проверьте страницу совместимости и журнал конкретного плагина, особенно если он управляет мирами или чанками.

Не используйте /reload как способ проверки: Paper предупреждает, что перезагрузка известна проблемами с плагинами. После каждого изменения полностью остановите и заново запустите тестовый сервер.

Воспроизведите сбой на копии#

Создайте отдельный каталог и отдельную конфигурацию для тестового экземпляра. Не подключайте его к публичным игрокам: используйте локальный интерфейс или закройте порт firewall. Отдельно отключите либо замените доступ к рабочим базам, вебхукам, платежам, почте и другим внешним интеграциям. Иначе эксперимент может изменить данные живого сервера, даже если мир скопирован.

Начните с неизменённой копии и проверьте, повторяется ли тот же симптом. Если он появился после добавления одного плагина, выключите только его на тестовой копии и повторите те же действия. Если ошибка исчезла, проверьте совместимость, обязательные зависимости, настройки и версию Java, а затем задайте вопрос автору плагина с минимальным фрагментом журнала и списком версий.

Если подозреваемых несколько, делите их на небольшие группы и проверяйте по очереди. Оставляйте обязательные зависимости рядом с плагином, который от них зависит: иначе тест будет проверять отсутствующую зависимость, а не исходный конфликт. Когда группа выявлена, сужайте её до конкретного взаимодействия, меняя за раз одну причину. Сохраняйте копию исходной конфигурации перед изменением каждого тестового набора.

При ошибке порядка загрузки или circular plugin loading не добавляйте вслепую флаг -Dpaper.useLegacyPluginLoading=true. В руководстве Paper по диагностике это крайний вариант, который может усложнить поиск других проблем. Зафиксируйте полный текст сообщения и обратитесь к авторам участвующих плагинов.

Тестируйте группы плагинов на копии, сохраняя зависимости и внешние подключения под контролем.

Возвращайтесь к рабочему серверу осторожно#

Когда нашли поддерживаемое обновление или исправление, сначала повторите проверку на копии мира. Убедитесь, что сервер загружает ожидаемые измерения, важные плагины работают, права и конфигурации на месте, а журнал не показывает новых ошибок. Остановите тест штатно и создайте отдельную копию состояния до применения изменения на основном сервере.

На основном сервере меняйте только необходимый JAR или параметр конфигурации. Сохраняйте прежние файлы, пока не проверите запуск и внутриигровое поведение. Не удаляйте папки с данными плагинов как «очистку»: там могут находиться регионы, права, базы или настройки. Если мир, конфигурация либо внешний сервис уже изменились, остановите сервер и восстановите согласованный набор данных по вашей копии, а не смешивайте файлы разных состояний.

Материал показывает порядок диагностики по документации и обсуждениям Paper, но здесь не запускались сервер, плагины или восстановление резервной копии.