buildscript { repositories { maven { url = 'https://files.minecraftforge.net/maven' } jcenter() mavenCentral() } dependencies { classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '6.+', changing: true } } apply plugin: 'net.minecraftforge.gradle' apply plugin: 'com.github.johnrengelman.shadow' apply plugin: 'eclipse' eclipse { project { name = "Dynmap(Forge-1.16.5)" } } sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' // Need this here so eclipse task generates correctly. ext.buildNumber = System.getenv().BUILD_NUMBER ?: "Dev" minecraft { mappings channel: 'snapshot', version: '20201028-1.16.3' accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') runs { server { workingDirectory project.file('run').canonicalPath } } } project.archivesBaseName = "${project.archivesBaseName}-forge-1.16.5" dependencies { implementation project(path: ":DynmapCore", configuration: "shadow") minecraft 'net.minecraftforge:forge:1.16.5-36.0.15' } processResources { filesMatching('META-INF/mods.toml') { // replace version and mcversion expand( version: project.version + '-' + project.ext.buildNumber, mcversion: "1.16.5" ) } } shadowJar { dependencies { include(dependency(':DynmapCore')) exclude("META-INF/maven/**") exclude("META-INF/services/**") } archiveBaseName = "Dynmap" archiveClassifier = "forge-1.16.5" destinationDirectory = file '../target' } shadowJar.doLast { task -> ant.checksum file: task.archivePath } afterEvaluate { reobf { shadowJar { mappings = createMcpToSrg.output } } } task deobfJar(type: Jar) { from sourceSets.main.output archiveClassifier = 'dev' } artifacts { archives deobfJar } build.dependsOn(shadowJar)