Kotlin for Forge

Kotlin for Forge

Forge

Вот готовая статья, написанная по вашему запросу.


Kotlin for Forge — пишем моды на Kotlin под Forge

Kotlin for Forge — это не очередной мод, а инструмент для разработчиков. Он добавляет в Minecraft Forge поддержку языка программирования Kotlin, позволяя писать моды на нём вместо привычной Java. Если вы просто играете — этот мод вам понадобится только как зависимость, если в сборке есть моды, написанные на Kotlin.

Что под капотом?

С технической стороны библиотека работает так: она «затеняет» (shading) стандартные библиотеки Kotlin, подключает KotlinLanguageProvider для загрузки объявлений объектов с аннотацией @Mod, а также AutoKotlinEventBusSubscriber для автоматической подгрузки всего, что помечено @EventBusSubscriber. Вдобавок идут готовые утилиты и константы, упрощающие жизнь кодерам.

Начиная с версии 1.8.0, в состав входят следующие компоненты:

  • Kotlin 1.4.21 — сам язык.
  • Kotlin coroutines 1.4.2 — для асинхронных операций.
  • Kotlin JSON serialization 1.0.1 — для работы с JSON.
  • Jetbrains annotations 20.1.0 — для улучшения анализа кода.

Чем отличается от Kottle?

Главное отличие от аналога Kottle (начиная с версии 1.2.0) — собственная реализация IEventBus. Она полноценно поддерживает вызовы IEventBus#addListener и IEventBus#addGenericListener с передачей ссылок на функции. Это значит, что подписка на события работает так, как привыкли разработчики на Kotlin — лаконично и без лишних костылей.

Как начать?

Вам не обязательно использовать именно языковой загрузчик или все фичи библиотеки. Kotlin for Forge можно подключить просто ради того, чтобы получить доступ к самим библиотекам Kotlin внутри проекта.

Полная инструкция по интеграции лежит в официальном репозитории на GitHub.

Если возникли вопросы или есть идеи по улучшению — заходите на сервер Discord, там можно обсудить всё с автором и сообществом.

Все права на данный контент принадлежат его авторам. Мы не храним и не распространяем файлы — страница носит исключительно информационный характер. Оригинальный источник доступен по этой ссылке.

0
0
0

Комментарии (0)

Войдите, чтобы оставить комментарий

Пока нет комментариев

Будьте первым!