Mixin Extras NeoForge on Forge Fix: устранение конфликта модулей

Mixin Extras NeoForge on Forge Fix: зачем нужен патч и как он устраняет конфликт модулей Если вы собираете сборку на Forge и внезапно сталкиваетесь с ошибками, где в одном сообщении фигурируют и MixinExtras, и mixinextras.neoforge, это не «случайный глюк лаунчера», а классический конфликт пакетов...

Скачать mixinextrasneoonforgefix для Minecraft 1.19.3

Оригинальное название: mixinextrasneoonforgefix

Версии Minecraft: 1.19.3

Загрузчик: Forge

ФайлMCЗагрузчикРазмер
mixinextrasneoonforgefix-1.0.0.jar1.19.3Forge618 КБСкачать

Mixin Extras NeoForge on Forge Fix: зачем нужен патч и как он устраняет конфликт модулей

Если вы собираете сборку на Forge и внезапно сталкиваетесь с ошибками, где в одном сообщении фигурируют и MixinExtras, и mixinextras.neoforge, это не «случайный глюк лаунчера», а классический конфликт пакетов и экспортов модулей. Небольшой фикс под названием Mixin Extras NeoForge on Forge Fix как раз и создан, чтобы развести «полные» jar-файлы так, чтобы они не мешали друг другу при загрузке.

В чём суть проблемы

Суть в том, что при одновременной подгрузке полноценных артефактов NeoForge и Forge для MixinExtras разные части системы пытаются экспортировать или видеть одни и те же пакеты — например, области вроде com.llamalad7.mixinextras.sugar.impl.ref или com.llamalad7.mixinextras.lib.antlr.runtime.misc. В логе это выглядит как пересечение модулей: один модуль «отдаёт» пакет, другой «требует» его по-другому, и загрузчик упирается в противоречие. Именно когда в тексте ошибки упоминаются оба имени — MixinExtras и mixinextras.neoforge — этот фикс обычно и оказывается релевантным.

Симптомы: не только строка в latest.log

Важный нюанс для версий 1.18.2 и 1.19.2: такая ошибка может не попасть в latest.log и проявиться только в логах самого лаунчера. Поэтому ориентируйтесь и на косвенные признаки: на старых версиях (младше 1.20.1) лог иногда «обрывается» после строки вроде [net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator/]: Found 3 dependencies adding them to mods collection — как будто загрузка застряла на этапе обнаружения зависимостей внутри jar. Если параллельно вы подозреваете конфликт MixinExtras, имеет смысл проверить лог лаунчера и список модов на дублирующиеся или несовместимые варианты библиотеки.

Когда речь заходит о тонкой настройке модов и зависимостей, удобно пользоваться инструментом, который не заставляет вручную собирать десяток ссылок: например, если вы хотите быстро подобрать совместимые версии и не тонуть в ручной установке, этот мод можно легко установить через лаунчер foxygame.net — удобный, гибкий и современный лаунчер для Minecraft, где можно скачать моды прямо из меню, не распыляясь на поиск по разным сайтам.

Как работает исправление

Фикс решает задачу нетривиально, но понятно по смыслу: в состав добавляется пустой jar MixinExtras NeoForge и при этом используется полный jar MixinExtras для Forge. За счёт такой комбинации загрузка «цепляется» за нужный полный Forge-артефакт, а пустой NeoForge-jar не даёт двум «полным» версиям одновременно инициировать конфликтующую схему экспортов. Проще говоря, вы намеренно оставляете одну «рабочую» полную реализацию на стороне Forge и убираете сценарий, при котором одновременно активны два полных набора с пересекающимися пакетами.

  • Проверьте формулировку ошибки: должны фигурировать оба ключевых имени — MixinExtras и mixinextras.neoforge.
  • Сверьте версию Minecraft: на 1.18.2/1.19.2 смотрите лог лаунчера, а не только latest.log.
  • Обратите внимание на «обрыв» лога на версиях старше 1.20.1 — это может быть частью картины.

Лицензия и авторы MixinExtras

MixinExtras распространяется под лицензией MIT, поэтому подобное перераспределение состава jar в рамках фикса соответствует условиям лицензии при корректном указании исходных прав (подробности — в файле LICENSE в репозитории проекта LlamaLad7 на GitHub). Это важно для сборщиков модпаков и авторов, которые вкладывают зависимости в свои релизы: MIT здесь работает как «разрешительная» база для аккуратной упаковки.

Отдельно для авторов на MCreator (1.20.1)

Если вы делаете мод в MCreator и столкнулись с этой проблемой, часто помогает обновление шаблона генератора: в более новых версиях шаблона (не ниже 1.3) проблема уже учтена. Если обновление шаблона пока невозможно, можно вручную перенести правку из коммита в репозитории Generator-Forge-1.20.1 (ветка с исправлением для Gradle-конфигурации) — смысл в том, чтобы ваш проект не тянул конфликтующую комбинацию артефактов так, как это делала старая версия шаблона.

Вывод

Mixin Extras NeoForge on Forge Fix — это точечный инструмент для ситуации, когда Forge-сборка упирается в модульный конфликт между MixinExtras и mixinextras.neoforge. Он не «лечит всё подряд», зато хорошо закрывает описанный класс ошибок, если симптомы совпадают: оба имени в сообщении, странности в логах на 1.18.2–1.19.2 и характерный обрыв загрузки на более старых версиях. Перед установкой убедитесь, что вы действительно в целевом сценарии, и держите набор модов согласованным по версии Minecraft и лоадера — так фикс раскрывается так, как задумано, без лишних сюрпризов при следующем запуске.