Подмена класов других модов в проекте

Увидел вот эту фичу
1703097725903.png
С какой то версии идеи работало все автоматически сейчас создаю проекты копирую класс по пути пакета себе в проект и он не заменяется, может что надо настроить, что скинуть для решения проблемы понятия не имею может что в гредле надо настроить?
 
434
41
110
С какой то версии идеи работало все автоматически сейчас создаю проекты копирую класс по пути пакета себе в проект
Не самая хорошая практика. Достаточно просто дописать 2 строки в gradle и все заработает.
Если тебе конкретно нужно изменить класс другого мода - лучше использовать трансформеры или вручную (скомпилировать и вставить)
Иначе - нет никакой гарантии, что загрузится именно твой класс, а не измененный. + Можно еще предзагрузить свой класс из нужного тебе места (если без трансформеров)

Java:
repositories {
    ...
    flatDir { dirs 'lib' } //в этой папке лежит elca_server-2.3.jar
                          //можно сразу из мавен если возможно
}
dependencies {
    ...
    implementation fg.deobf('plus.elca:elca_server:2.3')
}
 
Последнее редактирование:
434
41
110
Потому что ее он не находит, и в мавен репозитории его тоже нет
Я пример дал, как правильно подключать любой мод в проект, этот же пример найдешь на оф сайте forge если по-дольше покопаешься
 

tox1cozZ

aka Agravaine
8,456
598
2,892
Это стоит использовать лишь для отладки и быстрого внедрения фич, чтобы проверить работоспособность и потом перевести на миксины/трансформеры.
Если ты собрался на прод такое выкатывать - не стоит.
 
434
41
110
Почему в одних местах советуешь fileTree, а в других flatDir? Подсказать разницу?
fg.deobf увы работает только с мавен-зависимостямм, и не важно локальные они или нет. Или есть способ запустить его по fileTree ?
 
1,074
72
372
Или есть способ запустить его по fileTree ?
Лучше fileTree не использовать. Использование репозиториев вроде flatDir даёт больше преимуществ. Например, рядом с jar можно поместить архивы с исходниками и документаций, чего в случае подключения "в лоб" fileTree не будет - эти архивы будут проигнорированы.
 
Сверху