buildscript { repositories { mavenLocal() mavenCentral() jcenter() maven { name = "forge" url = "https://maven.minecraftforge.net" } maven { name = "sonatype" url = "https://oss.sonatype.org/content/repositories/snapshots/" } maven { name = "jitpack" url = "https://jitpack.io" } } dependencies { classpath "com.github.GTNewHorizons:ForgeGradle:1.2.4" } } // Because Forge is too stupid to fix Deprecation Issues, and we cannot fix it on our end! (until we fork Forge) allprojects { tasks.withType(Javadoc) { //options.compilerArgs << "-Xlint:deprecation" options.addStringOption('Xdoclint:none', '-quiet') } } apply plugin: 'eclipse' eclipse { classpath { downloadJavadoc = true downloadSources = true } } apply plugin: 'idea' idea{ module { downloadJavadoc = true downloadSources = true } } apply plugin: 'forge' file "build.properties" withReader { def prop = new Properties() prop.load(it) ext.config = new ConfigSlurper().parse prop } file "version.properties" withReader { def prop = new Properties() prop.load(it) ext.config2 = new ConfigSlurper().parse prop } //apply plugin: 'se.bjurr.gitchangelog.git-changelog-gradle-plugin' version = "${config.gtpp.version}.${config2.mod.version}" group= "gtPlusPlus" archivesBaseName = "GT-PlusPlus" //Java Version sourceCompatibility = 1.8 targetCompatibility = 1.8 //Compile against UTF-8 compileTestJava.options.encoding = 'UTF-8' javadoc.options.encoding = 'UTF-8' compileJava.options.encoding = 'UTF-8' minecraft { version = "${config.minecraft.version}-${config.forge.version}" runDir = "eclipse" srgExtra "PK: org/dom4j gtpp/shaded/org/dom4j" srgExtra "PK: org/javassist gtpp/shaded/org/javassist" srgExtra "PK: org/reflections/reflections gtpp/shaded/org/reflections" } idea { module { inheritOutputDirs = true } } configurations { provided embedded shade compile.extendsFrom provided, embedded, shade } repositories { maven { name = "gt" url = "http://gregtech.overminddl1.com/" } maven { name = "ic2" url = "http://maven.ic2.player.to/" } ivy { name = 'gtnh_download_source_stupid_underscore_typo' artifactPattern("http://downloads.gtnewhorizons.com/Mods_for_Jenkins/[module]_[revision].[ext]") } ivy { name = 'gtnh_download_source' artifactPattern("http://downloads.gtnewhorizons.com/Mods_for_Jenkins/[module]-[revision].[ext]") } maven { url = "https://jitpack.io" } maven { url "https://cursemaven.com" } } sourceSets { main { java { srcDirs = ["$projectDir/src/Java"] } resources { srcDirs = ["$projectDir/src/resources"] } } } 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, thats not the mcmod.info from(sourceSets.main.resources.srcDirs) { exclude 'mcmod.info' } exclude '**/Thumbs.db' } dependencies { compile "com.github.GTNewHorizons:Applied-Energistics-2-Unofficial:master-SNAPSHOT:dev" // Used for productive reflection without class loading. (0.9.12 has no reliance on Guava either) //shade group: 'org.reflections', name: 'reflections', version: '0.9.12' //shade group: 'org.dom4j', name: 'dom4j', version: '2.1.1' //compile group: 'org.javassist', name: 'javassist', version: '3.26.0-GA' implementation 'com.github.GTNewHorizons:GT5-Unofficial:master-SNAPSHOT:dev' compile "com.github.GTNewHorizons:StructureLib:master-SNAPSHOT:dev" provided "net.industrial-craft:industrialcraft-2:${config.ic2.version}:dev" compile "com.github.GTNewHorizons:Waila:master-SNAPSHOT:dev" compile "com.github.GTNewHorizons:NotEnoughItems:master-SNAPSHOT:dev" compile "api.player:PlayerAPI:1.7.10-1.4" compile "minetweaker:MineTweaker3:1.7.10-3.0.10:dev-full" compile "com.github.GTNewHorizons:EnderIO:master-SNAPSHOT:dev" compile "curse.maven:cofh-core-69162:2388750" compile "curse.maven:cofh-lib-220333:2388748" implementation 'com.github.GTNewHorizons:ForestryMC:master-SNAPSHOT:dev' compileOnly "com.github.GTNewHorizons:Railcraft:master-SNAPSHOT:dev" implementation 'com.github.GTNewHorizons:SC2:master-SNAPSHOT' compileOnly "openmods:OpenModsLib:1.7.10-0.10:deobf" compileOnly "openblocks:OpenBlocks:1.7.10-1.6-1.7.10:deobf" //compileOnly "micdoodle8.mods:MicdoodleCore:1.7-3.0.12.504:Dev" //compileOnly "micdoodle8.mods:GalacticraftCore:1.7-3.0.12.504:Dev" //compileOnly "micdoodle8.mods:Galacticraft-Planets:1.7-3.0.12.504:Dev" compileOnly "thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev" compile "com.azanor.baubles:Baubles:1.7.10-1.0.1.10:deobf" } jar { archiveName = archivesBaseName + "-" + version + ".jar" manifest { attributes 'FMLCorePlugin': 'gtPlusPlus.preloader.asm.Preloader_FMLLoadingPlugin' attributes 'FMLCorePluginContainsFMLMod': 'true' } configurations.shade.each { dep -> from(project.zipTree(dep)){ exclude 'META-INF', 'META-INF/**' } } } task generateDictionaries(type: JavaExec) { group = "Execution" description = "Generates the dictionaries for Proguard" classpath = sourceSets.main.runtimeClasspath main = "gtPlusPlus.GenerateDictionaries" }