buildscript { repositories { jcenter() maven { url = "http://files.minecraftforge.net/maven" } } dependencies { classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT' } } plugins { id 'io.franzbecker.gradle-lombok' version '1.11' id 'java' } apply plugin: 'java' apply plugin: 'net.minecraftforge.gradle.forge' repositories { maven { url "https://jitpack.io" } } configurations { embed compile.extendsFrom(embed) } dependencies { embed 'com.flowpowered:flow-math:1.0.3' embed 'org.jgrapht:jgrapht-core:1.1.0' embed 'com.github.DimensionalDevelopment:poly2tri.java:master-SNAPSHOT' compileOnly 'com.github.DimensionalDevelopment:AnnotatedNBT:-SNAPSHOT' compileOnly 'com.github.OpenCubicChunks:CubicChunks:MC_1.12-SNAPSHOT' } // Mod version version = ext.modversion = "3.0.8" boolean isBeta = false group = "org.dimdev.dimdoors" archivesBaseName = "DimensionalDoors" // Build number String fullVersion = version if (System.getenv("TRAVIS_BUILD_NUMBER") != null) { fullVersion += "+${System.getenv("TRAVIS_BUILD_NUMBER")}" } else { fullVersion += "+UNOFFICIAL" } if (isBeta) { fullVersion += "-b" } String jarVersion = fullVersion.replace("+", "-") // Github/Travis doesn't seem to support + in filenames // Minecraft, MCP, Forge, and Java versions sourceCompatibility = targetCompatibility = "1.8" ext.mcversion = "1.12.2" ext.forgeversion = "14.23.2.2623" String mcpversion = "snapshot_20180227" minecraft { version = "$mcversion-$forgeversion" runDir = "run" mappings = mcpversion replace '${version}', fullVersion makeObfSourceJar = false } // Tasks compileJava { //options.compilerArgs += "-proc:only" // To debug AnnotatedNBT code generation } jar { archiveName = archivesBaseName + "-" + jarVersion + ".jar" from configurations.embed.collect { it.isDirectory() ? it : zipTree(it) } } task sourcesJar(type: Jar, dependsOn: classes) { archiveName = archivesBaseName + "-" + jarVersion + "-sources.jar" classifier = 'sources' from sourceSets.main.allSource } artifacts { archives sourcesJar } processResources { // This will ensure that this task is redone when the versions change. inputs.property "version", project.version inputs.property "mcversion", project.minecraft.version // Replace stuff in mcmod.info, nothing else from(sourceSets.main.resources.srcDirs) { include 'mcmod.info' // replace version and mcversion expand 'version': project.version, 'mcversion': project.minecraft.version } // Copy everything else except mcmod.info from(sourceSets.main.resources.srcDirs) { exclude 'mcmod.info' } } task generatePocketSchematics(dependsOn: jar, type: JavaExec, group: "dimdoors") { classpath = files('build/libs/' + jar.archiveName) classpath += sourceSets.main.runtimeClasspath main = "org.dimdev.dimdoors.shared.tools.SchematicGenerator" //noinspection GroovyAssignabilityCheck (IntelliJ is wrong) args "src/main/resources/assets/dimdoors/pockets/schematic" }