buildscript { repositories { jcenter() maven { url = 'https://plugins.gradle.org/m2' } maven {url = "https://oss.sonatype.org/content/repositories/snapshots/"} maven {url = "http://repo.minecrell.net/snapshots"} maven { url = "http://files.minecraftforge.net/maven" } maven { url = "http://repo.minecrell.net/releases" } maven { url = "https://oss.sonatype.org/content/repositories/snapshots/" } } dependencies { classpath 'gradle.plugin.net.minecrell:vanillagradle:2.2-6' classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT' } } plugins { id 'org.spongepowered.plugin' version '0.8.1' } apply plugin: 'net.minecrell.vanillagradle.server' apply plugin: 'com.github.johnrengelman.shadow' sourceCompatibility = 1.8 targetCompatibility = 1.8 clean { delete "../target" } repositories { flatDir {dirs 'lib'} maven { name = 'forge' url = 'http://files.minecraftforge.net/maven' } maven { name = "Sponge" url = "https://repo.spongepowered.org/maven" } maven { name = "Sponge Metrics" url = "http://repo.mcstats.org/content/repositories/releases/" } } dependencies { compile project(':core') compile 'org.spongepowered:spongeapi:7.1.0-SNAPSHOT' compile name: 'worldedit-sponge-6.1.9-SNAPSHOT-dist' compile name: 'worldedit-core-6.1.9-SNAPSHOT-dist' compile 'org.yaml:snakeyaml:1.18' } minecraft { version = "1.12.2" mappings = "snapshot_20171022" runDir = 'run' } project.archivesBaseName = "${project.archivesBaseName}-mc${minecraft.version}" processResources { from(sourceSets.main.resources.srcDirs) { expand 'version': project.version, 'mcVersion': project.minecraft.version exclude 'mcmod.info' } } shadowJar { relocate 'org.yaml.snakeyaml', 'com.boydti.fawe.yaml' dependencies { include(dependency(':core')) include(dependency('org.yaml:snakeyaml:1.18')) include(dependency('com.github.luben:zstd-jni:1.1.1')) // include(dependency('org.javassist:javassist:3.22.0-CR1')) include(dependency('co.aikar:fastutil-lite:1.0')) include(dependency(name: 'worldedit-sponge-6.1.9-SNAPSHOT-dist')) include(dependency(name: 'worldedit-core-6.1.9-SNAPSHOT-dist')) } archiveName = "${parent.name}-${project.name}-${parent.version}.jar" destinationDir = file '../target' } shadowJar.doLast { task -> ant.checksum file: task.archivePath } reobf { shadowJar { mappingType = 'SEARGE' } } task deobfJar(type: Jar) { from sourceSets.main.output classifier = 'dev' } artifacts { archives deobfJar } build.dependsOn(shadowJar)