plugins { id 'java-library' id 'com.github.yannicklamprecht.spigot.tools' version '1.0.1' } java { sourceCompatibility = JavaVersion.VERSION_16 targetCompatibility = JavaVersion.VERSION_16 } repositories { mavenCentral() maven { url = 'https://oss.sonatype.org/content/repositories/snapshots' } maven { url = 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/' } mavenLocal() // This is needed for CraftBukkit and Spigot. // libs folder (TODO: transfer away from this!) flatDir { dirs 'libs' } } dependencies { compileOnly 'org.spigotmc:spigot:1.17-R0.1-SNAPSHOT:remapped-mojang' implementation name: 'Factions' implementation name: 'GriefPrevention' implementation name: 'MassiveCore' implementation name: 'PreciousStones' implementation name: 'RedProtect' implementation name: 'Residence' implementation name: 'Towny' implementation name: 'WorldEdit' implementation name: 'WorldGuard' } tasks { spigotTools { mojangMapped.set(true) version.set("1.17") outputClassifier.set("spigot-mapped") } } task obfuscate(type: Exec) { description 'Generates an obfuscated version of the jar for use with Spigot.' group = 'jar preparation' workingDir "${buildDir}" ext.toolingDir = System.getProperty("user.dir") ext.homeDir = project.gradle.gradleUserHomeDir.parent commandLine 'java', '-jar', ext.toolingDir + '/tooling/specialsource/SpecialSource.jar', '-i', 'libs/' + rootProject.name + '.jar', '-o', 'libs/' + rootProject.name + '-obf.jar', '-m', ext.homeDir + '/.m2/repository/org/spigotmc/minecraft-server/1.17-R0.1-SNAPSHOT/minecraft-server-1.17-R0.1-SNAPSHOT-maps-mojang.txt', '--reverse' } task deobfuscate(type: Exec) { description 'Generates a deobfuscated version of the jar for development purposes. Resulting jar cannot be used with Spigot.' group = 'jar preparation' workingDir "${buildDir}" ext.toolingDir = System.getProperty("user.dir") ext.homeDir = project.gradle.gradleUserHomeDir.parent commandLine 'java', '-jar', ext.toolingDir + '/tooling/specialsource/SpecialSource.jar', '-i', 'libs/' + rootProject.name + '-obf.jar', '-o', 'libs/' + rootProject.name + '.jar', '-m', ext.homeDir + '/.m2/repository/org/spigotmc/minecraft-server/1.17-R0.1-SNAPSHOT/minecraft-server-1.17-R0.1-SNAPSHOT-maps-spigot.csrg' }