buildscript { repositories { maven { url = 'https://files.minecraftforge.net/maven' } jcenter() mavenCentral() } dependencies { classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true } } apply plugin: 'net.minecraftforge.gradle' apply plugin: 'eclipse' apply plugin: 'com.github.johnrengelman.shadow' 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: '20200514-1.15.1' accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') runs { server { workingDirectory project.file('run').canonicalPath } } } project.archivesBaseName = "${project.archivesBaseName}-forge-1.15.2" dependencies { compile project(path: ":DynmapCore", configuration: "shadow") minecraft 'net.minecraftforge:forge:1.15.2-31.2.3' } processResources { inputs.property "version", project.version + '-' + project.ext.buildNumber // replace stuff in mcmod.info, nothing else from(sourceSets.main.resources.srcDirs) { include 'META-INF/mods.toml' // replace version and mcversion expand( version: project.version + '-' + project.ext.buildNumber, mcversion: "1.15.2" ) } // copy everything else, thats not the mcmod.info from(sourceSets.main.resources.srcDirs) { exclude 'META-INF/mods.toml' } } shadowJar { dependencies { include(dependency(':DynmapCore')) } archiveName = "Dynmap-${parent.version}-forge-1.15.2.jar" destinationDir = file '../target' } shadowJar.doLast { task -> ant.checksum file: task.archivePath } afterEvaluate { reobf { shadowJar { mappings = createMcpToSrg.output } } } task deobfJar(type: Jar) { from sourceSets.main.output classifier = 'dev' } artifacts { archives deobfJar } build.dependsOn(shadowJar)