apply plugin: "eclipse" apply plugin: "idea" apply plugin: "maven" apply plugin: "java-library" repositories { maven { url "https://hub.spigotmc.org/nexus/content/groups/public" } maven { url "https://repo.codemc.org/repository/maven-public" } maven { url "https://papermc.io/repo/repository/maven-public/" } } configurations.all { Configuration it -> it.resolutionStrategy { ResolutionStrategy rs -> rs.force("com.google.guava:guava:21.0") } it.resolutionStrategy { ResolutionStrategy rs -> rs.force("it.unimi.dsi:fastutil:8.2.1") } } dependencies { compile ("net.milkbowl.vault:VaultAPI:1.7") api project(":worldedit-core") api project(":worldedit-libs:core") // TODO remove once core can compile api project(":worldedit-libs:bukkit") compileOnly "com.sk89q:dummypermscompat:1.10" compile "it.unimi.dsi:fastutil:8.2.1" testCompile "org.mockito:mockito-core:1.9.0-rc1" implementation("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1"){transitive = false} compile "com.destroystokyo.paper:paper-api:1.14.4-R0.1-SNAPSHOT" implementation("io.papermc:paperlib:1.0.2"){transitive = false} compileOnly "BuildTools:spigot-1.14.4:lastSuccessfulBuild@jar" implementation("com.sk89q.worldguard:worldguard-core:7.0.0-20190215.210421-39"){transitive = false} implementation("com.sk89q.worldguard:worldguard-legacy:7.0.0-20190215.210421-39"){transitive = false} implementation("com.massivecraft:factions:2.8.0"){transitive = false} implementation("com.drtshock:factions:1.6.9.5"){transitive = false} implementation("com.factionsone:FactionsOne:1.2.2"){transitive = false} implementation("me.ryanhamshire:GriefPrevention:11.5.2"){transitive = false} implementation("com.massivecraft:mcore:7.0.1"){transitive = false} implementation("net.sacredlabyrinth.Phaed:PreciousStones:10.0.4-SNAPSHOT"){transitive = false} implementation("net.jzx7:regios:5.9.9"){transitive = false} implementation("com.bekvon.bukkit.residence:Residence:4.5._13.1"){transitive = false} implementation("com.palmergames.bukkit:towny:0.84.0.9"){transitive = false} implementation("com.thevoxelbox.voxelsniper:voxelsniper:5.171.0"){transitive = false} implementation("com.comphenix.protocol:ProtocolLib-API:4.4.0-SNAPSHOT"){transitive = false} implementation("com.wasteofplastic:askyblock:3.0.8.2"){transitive = false} } shadowJar { dependencies { relocate "org.slf4j", "com.sk89q.worldedit.slf4j" relocate "org.apache.logging.slf4j", "com.sk89q.worldedit.log4jbridge" include(dependency(":worldedit-core")) include(dependency(":worldedit-libs:core")) include(dependency(":worldedit-libs:bukkit")) include(dependency("org.slf4j:slf4j-api")) include(dependency("org.apache.logging.log4j:log4j-slf4j-impl")) relocate("it.unimi.dsi.fastutil", "com.sk89q.worldedit.bukkit.fastutil") { include("it.unimi.dsi:fastutil") } } archiveName = "${parent.name}-${project.name.replaceAll("worldedit-", "")}-${parent.version}.jar" destinationDir = file "../target" } processResources { from("src/main/resources") { expand( name: project.parent.name, version: project.parent.version ) include "plugin.yml" } } jar.archiveName="fawe-bukkit-${project.parent.version}.jar" jar.destinationDir = file "../mvn/com/boydti/fawe-bukkit/" + project.parent.version task createPom { doLast { pom { project { groupId "com.boydti" artifactId "fawe-bukkit" version project.parent.version } } .getEffectivePom() .setDependencies(new ArrayList<>()) .writeTo("../mvn/com/boydti/fawe-bukkit/${project.parent.version}/fawe-bukkit-${project.parent.version}.pom") pom { project { groupId "com.boydti" artifactId "fawe-bukkit" version "latest" } } .getEffectivePom() .setDependencies(new ArrayList<>()) .writeTo("../mvn/com/boydti/fawe-bukkit/latest/fawe-bukkit-latest.pom") } } task copyFiles { doLast { copy { from "../mvn/com/boydti/fawe-bukkit/${project.parent.version}/" into "../mvn/com/boydti/fawe-bukkit/latest/" include("*.jar") rename ("fawe-bukkit-${project.parent.version}.jar", "fawe-bukkit-latest.jar") } } } build.dependsOn(shadowJar) build.finalizedBy(copyFiles) copyFiles.dependsOn(createPom)