import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar plugins { `java-library` } applyPlatformAndCoreConfiguration() applyShadowConfiguration() repositories { maven { url = uri("https://hub.spigotmc.org/nexus/content/groups/public") } maven { url = uri("https://repo.codemc.org/repository/maven-public") } maven { url = uri("https://papermc.io/repo/repository/maven-public/") } } configurations.all { resolutionStrategy { force("com.google.guava:guava:21.0") } } dependencies { "api"(project(":worldedit-core")) "api"(project(":worldedit-libs:bukkit")) "api"("org.bukkit:bukkit:1.13.2-R0.1-SNAPSHOT") { exclude("junit", "junit") } "compileOnly"("com.destroystokyo.paper:paper-api:1.13.2-R0.1-SNAPSHOT") "implementation"("io.papermc:paperlib:1.0.2") "compileOnly"("com.sk89q:dummypermscompat:1.10") "implementation"("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1") "implementation"("org.bstats:bstats-bukkit:1.5") "testCompile"("org.mockito:mockito-core:1.9.0-rc1") } tasks.named("processResources") { filesMatching("plugin.yml") { expand("internalVersion" to project.ext["internalVersion"]) } from(zipTree("src/main/resources/worldedit-adapters.jar").matching { exclude("META-INF/") }) exclude("**/worldedit-adapters.jar") } tasks.named("jar") { manifest { attributes("Class-Path" to "truezip.jar WorldEdit/truezip.jar js.jar WorldEdit/js.jar", "WorldEdit-Version" to project.version) } } tasks.named("shadowJar") { dependencies { relocate("org.slf4j", "com.sk89q.worldedit.slf4j") relocate("org.apache.logging.slf4j", "com.sk89q.worldedit.log4jbridge") include(dependency(":worldedit-core")) include(dependency("org.slf4j:slf4j-api")) include(dependency("org.apache.logging.log4j:log4j-slf4j-impl")) relocate("org.bstats", "com.sk89q.worldedit.bukkit.bstats") { include(dependency("org.bstats:bstats-bukkit:1.5")) } relocate("io.papermc.lib", "com.sk89q.worldedit.bukkit.paperlib") { include(dependency("io.papermc:paperlib:1.0.2")) } } } tasks.named("assemble").configure { dependsOn("shadowJar") }