Bon2Gradle

Bon2Gradle

1,200
37
237
1,074
72
372
Накроется cursemaven медным тазом и что тогда будете делать? Опыт показывает, что репозитории модов имеют короткий срок жизни. Через годик-другой проект будет собрать невозможно.

Предпочитаю всё же ручками подготавливать зависимости и архив с исходниками. Декомпилятор в IDEA сильно оставляет желать лучшего.
 
1,200
37
237
А причем тут курс мавен? Я специально написал, что он как пример.

Все что используется, это бон (я сделал форк) и любой дев плагин для провайдера мапов, а можно и без него.
 
7,099
324
1,510
Можно локальную репу:
Gradle (Groovy):
repositories {
    flatDir {
        dirs 'libs'
    }
}

dependencies {
    implementation bon2.deobf("abc:modA:version")
    implementation bon2.deobf("abc:modB:version")
}
 
1,200
37
237
Можно, конечно, но с таким же успехом можно и деобфусцированные моды кидать в эту репу.
Ну например можно с гитхаба через джитпак моды потягивать, они ж по умолчанию будут собираться как обфусцированные, если автор репозитория не настроил публикацию других артефактов.
 
1,074
72
372
Свой репозиторий надо иметь, иначе никак. Модовые быстро помирают...

Ну например можно с гитхаба через джитпак моды потягивать
С подавляющим большинством не прокатит без должной настройки проекта автором.
 
1,074
72
372
Не будет.
  1. Должны быть рабочие репозитории зависимостей с открытым доступом.
  2. Должен быть настроен плагин maven-publish.
  3. group и version должны быть определены через properties, иначе jitpack не сможет заменить их на свои.

Поэтому проще всего и, самое главное - надёжнее, хранить все зависимости в проекте. А если проектов очень много, есть смысл развернуть свой maven репозиторий.
 
1,200
37
237
Я против хранения бинарей в репозитории, к этому можно прибегнуть, если репозитоий реально умрет.

И если все репозитории умирают так часто, то зачем fg.deobf существует в FG5? Да и у фабрика что-то было такое же.

Сам я использую репозиторий грегтеха, но там всего модов 15 для 1.7.10.
 
1,200
37
237
MJaroslav обновил(а) ресурс Bon2Gradle новой записью:

0.3.0

0.3.0 - 2022-10-14​

Исправлено​

  • Иногда деобфусцированные бинарники зависимостей не появлялись в своей папке. Это оказалось из-за того, что задача clean выполняется после разрешения зависимостей и удаляет эти бинарники. Теперь они хранятся в кешах gradle home.

Добавлено​

  • Параллельная деобфускация зависимостей (я...

Узнать больше об этом обновлении...
 
7,099
324
1,510
Попробовал заюзать
Если сделать как в инструкции, то не находит объект bon2.deobf
Добавил apply plugin: 'bon2gradle'
Теперь:
Код:
A problem occurred evaluating root project '1.7.10-kotlin-example'.
> Failed to apply plugin [id 'bon2gradle']
   > Could not create plugin of type 'Bon2GradlePlugin'.
      > Class io.github.mjaroslav.bon2gradle.Bon2GradlePlugin is an abstract class.
 
1,200
37
237
Градл 7.5.1 попробуй, я на нем делал.

Дома когда буду посмотрю чё и как ему угодно модификаторы ставить. А то просит их, а потом необорот.
 
1,200
37
237
MJaroslav обновил(а) ресурс Bon2Gradle новой записью:

0.3.1

0.3.1 - 2022-10-16​

Исправлено​

  • Ошибка конфигурации проекта с указанием на абстрактность класса плагина на специфичных версиях Gradle. (На самом деле не уверен, но модификатор абстрактности класса убрал).

Узнать больше об этом обновлении...
 
1,200
37
237
Добавил apply plugin: 'bon2gradle'
Я это, кстати, забыл в инструкцию добавить, поправил. Но самый актуальный гайд при надобности смотри в README, а то могу и забыть тут обновить что-то, в том числе версию используемую в примере.

Проверяй на свою ошибку, а то я её не смог воспроизвести, хоть и убрал причину. Ну и грабля минимальная 6.8, если что.
 
1,200
37
237
Накроется cursemaven медным тазом
Зашел я сейчас на curse, полистал моды и увидел, что cursemaven теперь официальный и, следовательно, так просто не умрет. Ну.. разве что нельзя цеплять моды, которые там какую-то настройку отключили в проекте.
 
1,200
37
237
MJaroslav обновил(а) ресурс Bon2Gradle новой записью:

0.5.0

0.5.0 - 2024-03-18​


Добавлено​

  • Вариант функции deobf со вторым параметром типа Closure для настройки "чистых" (обфусцированных) зависимостей.
  • deobf функция с параметром типа Dependency.
  • Задачи очистки:
    • cleanDeobfCache - удаляет весь кеш деобфусцированных артефактов (просто выполняет следующие две задачи)...

Узнать больше об этом обновлении...
 
Сверху