Ошибка "cannot be resolved to a variable"

недавно занялся переносом мода с одной версии на другую. При копировании главных классов в консоли начала появлятся эта ошибка, хотя в коде их априори быть не может. Причем ошибка появляется даже в импортах библиотек. Как пофиксить этот кошмар?
 
Последнее редактирование:
7,099
324
1,510
  1. Изучить моддинг на версии с которой портируешь
  2. Изучить моддинг на 1.16.5
  3. Понять, как работает оригинальный мод
  4. Воспроизвести ту же логику на 1.16.5
Ctrl+c, ctrl+v почти никогда не работает в этом деле
 

WantaSanchez

Опоздун
633
17
150
Ctrl+c, ctrl+v почти никогда не работает в этом деле
Ну, чисто навскидку, для Fabric модов это даже очень хорошо работает но это скорее особенности Fabric API.
Причем ошибка появляется даже в импортах библиотек.
Ели переносить мод к примеру с 1.7.10 на 1.12.2, 90% импортов либ кузни перестанут работать. Имена классов и методов между версиями кузни часто меняется.
 
7,099
324
1,510
Ну, чисто навскидку, для Fabric модов это даже очень хорошо работает но это скорее особенности Fabric API.
Для Forge это тоже работает хорошо, но только на версиях 1.14+
Поэтому "почти никогда"
 

will0376

Токсичная личность
2,072
55
584
переносить мод к примеру с 1.7.10 на 1.12.2,
(немного оффтопа) Если проектировать мод с самого начала(и если есть навыки в яву) - можно реализовать через абстракции основную механику. А блоки и т.п. добавлять новыми методами
 
7,099
324
1,510
Ты имеешь ввиду, что каждый мододел делает свое апи поверх форжа, а потом реализует на этом апи мод?
 

will0376

Токсичная личность
2,072
55
584
что каждый мододел делает свое апи поверх форжа
не апи. а просто свой интерфейс, который реализуется под каждую версию... Так переписывать код меньше надо будет...
Я такую дичь в MW (автора vicmatskiv) видал
 
Сверху