Другие задачи (Other Tasks) 26.1.2
Описание: Документация по дополнительным задачам Fabric Loom.
Следующие задачи не регистрируются по умолчанию в проекте Loom, но могут быть добавлены для расширения функционала.
Генерация Fabric Mod JSON
Задача net.fabricmc.loom.task.FabricModJsonV1Task используется для создания корректного файла fabric.mod.json для твоего мода. Это простая задача, которая создаёт выходной файл — тебе нужно только настроить билд-скрипт так, чтобы он включал этот файл в ресурсы мода.
gradle
tasks.register("generateModJson", net.fabricmc.loom.task.FabricModJsonV1Task) {
outputFile = file("fabric.mod.json")
json {
modId = "example-mod"
version = "1.0.0"
}
}1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
Приведённый пример — это базовое использование задачи. Он создаст файл fabric.mod.json с указанными modId и version. Блок json поддерживает все поля, определённые в схеме Fabric Mod JSON.
Задача скачивания (Download Task)
Задача net.fabricmc.loom.task.DownloadTask позволяет скачивать файлы из заданного URL в указанное место.
Например, чтобы скачать файл с сайта и сохранить его в out.txt в корне проекта:
gradle
tasks.register("download", net.fabricmc.loom.task.DownloadTask) {
url = "https://example.com/file.txt"
output = file("out.txt")
}1
2
3
4
2
3
4
Также можно указать ожидаемый SHA-1 хэш для проверки целостности файла и максимальный возраст (время, после которого файл будет перекачан, если устарел):
gradle
tasks.register("download", net.fabricmc.loom.task.DownloadTask) {
url = "https://example.com/file.txt"
output = file("out.txt")
sha1 = "EXPECTED-SHA1-HASH-HERE"
maxAge = Duration.ofDays(1)
}1
2
3
4
5
6
2
3
4
5
6
Задача ModEnigmaTask
Задача net.fabricmc.loom.task.tool.ModEnigmaTask — это продвинутая задача, которая запускает Enigma для работы с файлом маппингов. Она может использоваться для генерации javadoc, предоставляемого модом.
gradle
tasks.register("enigma", net.fabricmc.loom.task.tool.ModEnigmaTask) {
mappingsFile = file("mappings.mapping")
}1
2
3
2
3
Проверка имён Mixin (ValidateMixinNameTask)
Задача net.fabricmc.loom.task.ValidateMixinNameTask проверяет, совпадает ли имя класса Mixin с именем целевого класса, к которому он применяется.
gradle
tasks.register('validateMixinNames', net.fabricmc.loom.task.ValidateMixinNameTask) {
source(sourceSets.main.output)
}
check.dependsOn "validateMixinNames"1
2
3
4
5
2
3
4
5

