buildscript { repositories { jcenter() mavenCentral() maven { url 'https://files.minecraftforge.net/maven' } } dependencies { classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } plugins { id "maven" id "com.github.johnrengelman.shadow" version "4.0.4" } apply plugin: 'net.minecraftforge.gradle' apply plugin: 'kotlin' apply plugin: 'eclipse' apply from: 'https://github.com/shadowfacts/maven/raw/master/maven.gradle' version = mod_version sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' // Need this here so eclipse task generates correctly. compileKotlin.kotlinOptions.jvmTarget = compileTestKotlin.kotlinOptions.jvmTarget = '1.8' minecraft { mappings channel: mappings_channel, version: mappings_version runs { client = { // recommended logging data for a userdev environment properties 'forge.logging.markers': 'CORE,SCAN,REGISTRIES,REGISTRYDUMP' // recommended logging level for the console properties 'forge.logging.console.level': 'debug' // enable console colors properties 'forge.logging.noansi': 'false' workingDirectory project.file('run').canonicalPath source sourceSets.main } // todo https://github.com/MinecraftForge/ForgeGradle/pull/546 /*testClient = { workingDirectory project.file('run').canonicalPath source sourceSets.main source sourceSets.test merge 'client' }*/ server = { // recommended logging data for a userdev environment properties 'forge.logging.markers': 'CORE,SCAN,REGISTRIES,REGISTRYDUMP' // recommended logging level for the console properties 'forge.logging.console.level': 'debug' // enable console colors properties 'forge.logging.noansi': 'false' workingDirectory project.file('run').canonicalPath source sourceSets.main } } } jar { manifest { attributes(["Specification-Title": "Mod Language Provider", "Specification-Vendor": "Forge Development LLC", "Specification-Version": "1", "Implementation-Title": project.name, "Implementation-Version": "${version}", "Implementation-Vendor" :"forgelin", "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")], 'net/shadowfacts/forgelin/') } } repositories { jcenter() } dependencies { minecraft forge_version compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version" compile "org.jetbrains:annotations:$annotations_version" compile "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutines_version" compile "org.jetbrains.kotlinx:kotlinx-coroutines-jdk8:$coroutines_version" } shadowJar { classifier = "" dependencies { include(dependency("org.jetbrains.kotlin:kotlin-stdlib:${kotlin_version}")) include(dependency("org.jetbrains.kotlin:kotlin-reflect:${kotlin_version}")) include(dependency("org.jetbrains:annotations:${annotations_version}")) include(dependency("org.jetbrains.kotlinx:kotlinx-coroutines-core:${coroutines_version}")) include(dependency("org.jetbrains.kotlinx:kotlinx-coroutines-jdk8:${coroutines_version}")) } } tasks.build.dependsOn shadowJar artifacts { archives shadowJar } /*reobf { shadowJar { mappingType = "SEARGE" } }*/ //tasks.reobfShadowJar.mustRunAfter shadowJar //tasks.build.dependsOn reobfShadowJar