// For those who want the bleeding edge buildscript { repositories { jcenter() maven { name = "forge" url = "http://files.minecraftforge.net/maven" } } dependencies { classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT' classpath 'org.ajoberstar:gradle-git:1.6.0' } } apply plugin: 'net.minecraftforge.gradle.forge' apply plugin: 'org.ajoberstar.grgit' /* // for people who want stable - not yet functional for MC 1.8.8 - we require the forgegradle 2.1 snapshot plugins { id "net.minecraftforge.gradle.forge" version "2.0.2" } */ version = "1.80pr0" group = "dan200.computercraft" archivesBaseName = "ComputerCraft" minecraft { version = "1.12-14.21.1.2387" runDir = "run" replace '${version}', project.version // the mappings can be changed at any time, and must be in the following format. // snapshot_YYYYMMDD snapshot are built nightly. // stable_# stables are built at the discretion of the MCP team. // Use non-default mappings at your own risk. they may not allways work. // simply re-run your setup task after changing the mappings to update your workspace. mappings = "snapshot_20170629" // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. } repositories { maven { name = "squiddev" url = "https://dl.bintray.com/squiddev/maven" } } configurations { shade compile.extendsFrom shade } dependencies { // you may put jars on which you depend on in ./libs // or you may define them like so.. //compile "some.group:artifact:version:classifier" //compile "some.group:artifact:version" // real examples //compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env //compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env // the 'provided' configuration is for optional dependencies that exist at compile-time but might not at runtime. //provided 'com.mod-buildcraft:buildcraft:6.0.8:dev' // the deobf configurations: 'deobfCompile' and 'deobfProvided' are the same as the normal compile and provided, // except that these dependencies get remapped to your current MCP mappings //deobfCompile 'com.mod-buildcraft:buildcraft:6.0.8:dev' //deobfProvided 'com.mod-buildcraft:buildcraft:6.0.8:dev' // for more info... // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html // http://www.gradle.org/docs/current/userguide/dependency_management.html shade 'org.squiddev:Cobalt:0.3.0' } jar { from configurations.shade.collect { it.isDirectory() ? it : zipTree(it) } } jar { manifest { attributes('FMLAT': 'computercraft_at.cfg') } } import org.ajoberstar.grgit.Grgit processResources { inputs.property "version", project.version inputs.property "mcversion", project.minecraft.version def grgit = Grgit.open(dir: '.') inputs.property "commithash", grgit.head().id def blacklist = ['GitHub', 'dan200', 'Daniel Ratcliffe'] Set contributors = [] grgit.log().each { if (!blacklist.contains(it.author.name)) contributors.add(it.author.name) if (!blacklist.contains(it.committer.name)) contributors.add(it.committer.name) } from(sourceSets.main.resources.srcDirs) { include 'mcmod.info' include 'assets/computercraft/lua/rom/help/credits.txt' expand 'version':project.version, 'mcversion':project.minecraft.version, 'gitcontributors':contributors.sort(false, String.CASE_INSENSITIVE_ORDER).join('\n') } from(sourceSets.main.resources.srcDirs) { exclude 'mcmod.info' exclude 'assets/computercraft/lua/rom/help/credits.txt' } } gradle.projectsEvaluated { tasks.withType(JavaCompile) { options.compilerArgs << "-Xlint" } }