База знаний / Сервер не запускается: читаем логи

🔍 Решение проблем

Сервер не запускается: читаем логи

Сервер не доходит до рабочего состояния: после «Start» сразу гаснет, крутится в рестарте или просто завис − в большинстве случаев причину видно в логах.

Где лежат логи

  • Консоль в панели − поток в реальном времени при старте и во время работы.
  • logs/latest.log − полный текстовый лог текущего/последнего запуска (вкладка «Файлы» → папка logs/).
  • crash-reports/crash-….txt − отчёт, появляющийся если сервер упал с исключением.
  • На Forge/NeoForge иногда ещё есть logs/debug.log − расширенный лог.

Общие правила чтения логов

  1. Смотрите с конца. Итоговая причина почти всегда в последних 30–80 строках перед остановкой процесса. Начало лога − это нормальный старт JVM и загрузчика.
  2. Ищите якоря. В текстовом поиске по файлу (Ctrl+F) удобны слова: ERROR, FATAL, Exception, Caused by, Failed, Missing, Incompatible, OutOfMemory, Mod Resolution, crash.
  3. Первое серьёзное ERROR важнее всего. Ниже часто идут вторичные ошибки (например, не смог загрузить мир, потому что мод уже упал).
  4. Читайте Caused by:. Стек исключения многослойный. Верхняя строка − тип ошибки, блоки Caused by: ниже − настоящая причина (например, не найден класс зависимости или NPE внутри конкретного мода).
  5. Имя мода/плагина в стеке − подозреваемый №1. Пакеты вида mezz.jei, vazkii.botania, net.minecraftforge, net.fabricmc, org.bukkit подсказывают, чей код упал. Строка с at com.example.somemod.… прямо указывает на мод.
  6. WARN − не всегда катастрофа. Предупреждения про «missing optional», deprecated API, рецепты часто бывают и на рабочих серверах.

Не забывайте о бэкапах. Перед серьезными изменениями или диагностикой рекомендуется делать бэкапы.

Как понять, на каком этапе всё сломалось

Типичная последовательность в логе:

  1. Старт Java / ядра (Forge, Fabric, Paper…).
  2. Обнаружение и проверка модов/плагинов.
  3. Инициализация модов по фазам (см. ниже).
  4. Загрузка мира, спавна, плагинов Bukkit (на Paper).
  5. Строка вроде Done (Xs)! For help, type "help" − сервер готов к входу.

Если лог обрывается на списке модов или на Mod Resolution − проблема в наборе модов. Если дошли до мира и упали − стоит обратить внимание на мир, датапаки, конкретный тик/чанк.

Статусы модов в логе (Forge / NeoForge)

При старте Forge пишет таблицу или строки по каждому моду с буквенным состоянием. В старых crash-report часто есть легенда:

States:
  U = Unloaded
  L = Loaded
  C = Constructed
  H = Pre-initialized
  I = Initialized
  J = Post-initialized
  A = Available
  D = Disabled
  E = Errored

Смысл по порядку загрузки:

  • Unloaded (U) − мод ещё не трогали или отключён до загрузки.
  • Loaded / Pre-Loaded (L) − файл мода найден, метаданные прочитаны, класс мода подхвачен загрузчиком. Ещё рано для «игровой» инициализации.
  • Constructed (C) − создан объект мода (конструктор отработал).
  • Pre-initialized (H) − ранняя подготовка (блоки/предметы, регистрация до основной фазы).
  • Initialized (I) − основная инициализация мода.
  • Post-initialized (J) − всё, что должно происходить после других модов (интеграции, финальные рецепты).
  • Available (A) − мод успешно дошёл до рабочего состояния.
  • Disabled (D) − мод отключён (конфиг, неверная сторона client/server, зависимость).
  • Errored (E) − мод упал на своей фазе. Это главный маркер в списке.

Практическое правило: если в списке у одного мода стоит E / Errored, а у остальных A − начните с errored-мода (версия, зависимость, конфликт). Если с ошибкой сразу пачка модов − чаще виновата общая зависимость или несовместимый loader, а не каждый мод по отдельности.

В обычном latest.log те же этапы могут выглядеть строками вроде Sending event FMLCommonSetupEvent to mod … или Mod … initialized.

Fabric / Quilt

Буквенных U/L/C/H/I как у старого Forge обычно нет. Смотрите:

  • блок Fabric Mods: в crash-report − список с версиями;
  • Mod resolution failed / Incompatible mods found − не сошлись версии или зависимости;
  • в стеке пакеты net.fabricmc, ….fabric. и имя мода в первой ERROR-строке.
Клиентские моды (кастомное меню, интерфейсы и т.д.) на серверах Forge/NeoForge и Fabric часто вылетают на старте − их не должно быть в mods/ на сервере.

Как читать crash-report

Откройте свежий файл в crash-reports/. Типичная структура:

  1. Заголовок и время − убедитесь, что отчёт свежий.
  2. -- Head -- / описание − краткий тип: Exception in server tick loop, Bootstrap error, Mod loading has failed и т.п.
  3. Stacktrace − цепочка at …. Путь к конкретному источнику вылета.
  4. Caused by: − подробнее описывает причину вылета. Пример: сверху «Failed to load mod», а в Caused by − ClassNotFoundException отсутствующей библиотеки.
  5. Список модов (Forge: с буквами состояний; Fabric: список версий). Стоит обратить внимание на Errored, подозрительно старые/новые версии, дубликаты одного мода.
  6. System Details − версия Minecraft, loader, Java, память.
---- Minecraft Crash Report ----
// Example

Time: 2026-09-21 …
Description: Mod loading error has occurred

java.lang.RuntimeException: ...
  at ...some.mod.Class.method(...)
Caused by: java.lang.NoClassDefFoundError: ...
  ...

-- System Details --
Minecraft Version: 1.20.1
Forge: 47.x.x
...

Если в описании или стеке несколько раз мелькает один и тот же mod id / имя jar − временно уберите этот мод из mods/, перезапустите и проверьте, ушла ли проблема. Дальше: обновить мод, поставить недостающую зависимость или найти несовместимую пару.

Частые тексты ошибок и что делать

EULA

You need to agree to the EULA in order to run the server.

Как принять EULA − eula=true в eula.txt.

Нехватка памяти

java.lang.OutOfMemoryError: Java heap space

OutOfMemoryError: Java heap space − тариф, модпак, утечки.

Плагин (Paper / Spigot)

Error occurred while enabling Something v1.0
Could not load 'plugins/....jar'
  • Версия плагина не под ваш Minecraft / Paper API.
  • Нет зависимости (Vault, ProtocolLib и т.п.).
  • Повреждённый jar − скачайте снова.

Временно уберите jar из plugins/.

Моды: Missing / Resolution / Incompatible

Missing mods
Mod Resolution failed
Incompatible mods found
  • Не хватает зависимости или версии модов / loader не совпали.
  • На сервер попали чисто клиентские моды.
  • Два мода одной роли конфликтуют.

Порт занят

**** FAILED TO BIND TO PORT ****
Address already in use
  • Предыдущий процесс ещё жив − Stop/Kill, затем Start.
  • Вручную сменили server-port − верните порт хостинга; server-ip оставьте пустым.

Повреждённый мир

Exception loading world
Failed to load chunk
Region file corrupt

Откатиться через бэкап, либо удалить поврежденную область через NBTExplorer.

Java / ядро

UnsupportedClassVersionError
NoClassDefFoundError (сразу при старте ядра)
  • Неверная версия Java под Minecraft.

Связанные статьи