buildscript { repositories { maven { url = "http://files.minecraftforge.net/maven" } } dependencies { classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true } } plugins { id 'com.github.johnrengelman.shadow' version '4.0.1' } apply plugin: 'net.minecraftforge.gradle' minecraft { mappings channel: 'snapshot', version: '20200916-1.16.2' accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') } configurations { shade compile.extendsFrom shade } dependencies { minecraft 'net.minecraftforge:forge:1.16.4-35.0.3' shade project(':spark-common') } processResources { from(sourceSets.main.resources.srcDirs) { include 'META-INF/mods.toml' expand ( 'pluginVersion': project.pluginVersion, 'pluginDescription': project.pluginDescription ) } from(sourceSets.main.resources.srcDirs) { exclude 'META-INF/mods.toml' } } shadowJar { archiveName = 'spark-forge.jar' configurations = [project.configurations.shade] relocate 'okio', 'me.lucko.spark.lib.okio' relocate 'okhttp3', 'me.lucko.spark.lib.okhttp3' relocate 'net.kyori.adventure', 'me.lucko.spark.lib.adventure' relocate 'net.kyori.examination', 'me.lucko.spark.lib.adventure.examination' relocate 'org.tukaani.xz', 'me.lucko.spark.lib.xz' relocate 'com.google.protobuf', 'me.lucko.spark.lib.protobuf' relocate 'org.objectweb.asm', 'me.lucko.spark.lib.asm' relocate 'one.profiler', 'me.lucko.spark.lib.asyncprofiler' exclude 'module-info.class' exclude 'META-INF/maven/**' exclude 'META-INF/proguard/**' } artifacts { archives shadowJar shadow shadowJar } reobf { shadowJar { dependsOn createMcpToSrg mappings = createMcpToSrg.outputs.files.singleFile } }