/* * Build script for the Forge version of WorldEdit */ // Add ForgeGradle as a dependency for the build script buildscript { repositories { mavenCentral() maven { name = "forge" url = "http://files.minecraftforge.net/maven" } maven { name = "sonatype" url = "https://oss.sonatype.org/content/repositories/snapshots/" } jcenter() } dependencies { classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT' classpath 'com.github.jengelman.gradle.plugins:shadow:1.1.1' } } apply plugin: 'java' apply plugin: 'maven' apply plugin: 'forge' apply plugin: 'com.github.johnrengelman.shadow' group = 'com.sk89q' version = '6.0.0-SNAPSHOT' + System.getProperty("worldedit.build.suffix", "") archivesBaseName = "worldedit-forge" description = "An in-game voxel map editor for Minecraft." sourceCompatibility = 1.6 targetCompatibility = 1.6 repositories { mavenCentral() maven { url "http://repo.bukkit.org/content/groups/public" } maven { url "http://maven.sk89q.com/repo/" } maven { url "http://repo.maven.apache.org/maven2" } } dependencies { compile group: 'de.schlichtherle', name: 'truezip', version:'6.8.3' compile group: 'rhino', name: 'js', version:'1.7R2' compile group: 'org.yaml', name: 'snakeyaml', version:'1.9' compile group: 'com.google.guava', name: 'guava', version:'10.0.1' compile group: 'com.sk89q', name: 'jchronic', version:'0.2.4a' compile group: 'com.google.code.findbugs', name: 'jsr305', version: '1.3.9' compile group: 'com.thoughtworks.paranamer', name: 'paranamer', version: '2.6' compile group: 'com.google.code.gson', name: 'gson', version: '2.2.4' compile group: 'com.sk89q.lib', name: 'jlibnoise', version: '1.0.0' //compile group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3' testCompile group: 'org.mockito', name: 'mockito-core', version:'1.9.0-rc1' } sourceSets { main { java { srcDir 'src/main/java' srcDir 'src/legacy/java' srcDir 'src/forge/java' } resources { srcDir 'src/main/resources' srcDir 'src/forge/resources' } } } minecraft { ext.forgeVersion = "10.13.1.1225" version = "1.7.10-$forgeVersion" replaceIn "com/sk89q/worldedit/forge/ForgeWorldEdit.java" replace "%VERSION%", project.version } processResources { from (sourceSets.main.resources.srcDirs) { expand 'version': project.version, 'mcVersion': project.minecraft.version, 'forgeVersion': project.minecraft.forgeVersion include 'mcmod.info' } from (sourceSets.main.resources.srcDirs) { exclude 'mcmod.info' } } // shade needed runtime dependencies shadowJar { classifier 'shadow' dependencies { include(dependency('com.sk89q:jchronic:0.2.4a')) include(dependency('com.thoughtworks.paranamer:paranamer:2.6')) include(dependency('com.sk89q.lib:jlibnoise:1.0.0')) } exclude 'GradleStart**' exclude '.cache' } // ensure reobf happens reobf.reobf(shadowJar) { spec -> spec.classpath = sourceSets.main.compileClasspath; } task deleteOrig(type: Delete) { delete project.tasks.jar.archivePath.getPath() } task deleteShaded(type: Delete) { delete project.tasks.shadowJar.archivePath.getPath() } shadowJar.dependsOn(deleteShaded) build.dependsOn(shadowJar)