plugins { id 'java-library' id 'com.github.johnrengelman.shadow' version '7.0.0' id 'maven-publish' id 'java' } dependencies { implementation project(":eco-api") implementation project(":eco-core").getSubprojects() } allprojects { apply plugin: 'java' apply plugin: 'java-library' apply plugin: 'maven-publish' apply plugin: 'com.github.johnrengelman.shadow' repositories { mavenCentral() mavenLocal() maven { url 'https://jitpack.io' } // NMS (for jitpack compilation) maven { url 'https://repo.codemc.org/repository/nms/' } // bStats, mcMMO maven { url 'https://repo.codemc.org/repository/maven-public' } // Spigot API maven { url 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/' } // PlaceholderAPI maven { url 'https://repo.extendedclip.com/content/repositories/placeholderapi/' } // ProtocolLib maven { url 'https://repo.dmulloy2.net/nexus/repository/public/' } // WorldGuard maven { url 'https://maven.enginehub.org/repo/' } // FactionsUUID maven { url 'https://ci.ender.zone/plugin/repository/everything/' } // NoCheatPlus maven { url 'https://repo.md-5.net/content/repositories/snapshots/' } // CombatLogX maven { url 'https://nexus.sirblobman.xyz/repository/public/' } } dependencies { compileOnly 'org.jetbrains:annotations:19.0.0' // Lombok compileOnly 'org.projectlombok:lombok:1.18.20' annotationProcessor 'org.projectlombok:lombok:1.18.20' testCompileOnly 'org.projectlombok:lombok:1.18.20' testAnnotationProcessor 'org.projectlombok:lombok:1.18.20' } tasks.withType(JavaCompile) { options.deprecation = true options.encoding = 'UTF-8' } configurations.all { exclude group: "org.codehaus.plexus", module: "plexus-utils" exclude group: "com.mojang", module: "brigadier" exclude group: "org.kitteh", module: "paste-gg-api" exclude group: "org.spongepowered", module: "configurate-hocon" exclude group: "com.darkblade12", module: "particleeffect" exclude group: "com.github.cryptomorin", module: "XSeries" } shadowJar { relocate('org.bstats.bukkit', 'com.willfp.eco.shaded.bstats') relocate('org.apache.maven', 'com.willfp.eco.shaded.maven') } jar { onlyIf { !sourceSets.main.allSource.files.isEmpty() } } compileJava { onlyIf { !sourceSets.main.allSource.files.isEmpty() } } java { sourceCompatibility = JavaVersion.VERSION_16 targetCompatibility = JavaVersion.VERSION_16 } compileJava.options.encoding = 'UTF-8' compileJava.dependsOn clean build.dependsOn shadowJar } group = 'com.willfp' archivesBaseName = project.name version = findProperty("version")