plugins { id 'java-library' id 'com.github.johnrengelman.shadow' version '5.2.0' id 'maven-publish' id 'java' } dependencies { implementation getSubprojects() } allprojects { apply plugin: 'java' apply plugin: 'maven-publish' apply plugin: 'com.github.johnrengelman.shadow' repositories { mavenCentral() jcenter() mavenLocal() maven { url 'https://jitpack.io' } maven { url 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/' } maven { url 'https://repo.codemc.org/repository/nms/' } } dependencies { compileOnly 'org.jetbrains:annotations:19.0.0' } tasks.withType(JavaCompile) { options.deprecation = true options.encoding = 'UTF-8' } tasks.withType(Jar) { destinationDirectory = file("$rootDir/bin/") } processResources { filesNotMatching(["**/*.png", "**/models/**", "**/textures/**"]) { expand projectVersion: findProperty("version") } } compileJava.options.encoding = 'UTF-8' compileJava.dependsOn clean } clean.doLast { file("${rootDir}/bin").deleteDir() } shadowJar { relocate('org.bstats.bukkit', 'com.willfp.eco.core.util.shaded.bstats') relocate('org.apache.maven', 'com.willfp.eco.core.util.shaded.maven') archiveFileName = findProperty("plugin-name") + " v" + findProperty("version") + ".jar" } jar { archiveFileName = findProperty("plugin-name") + " v" + findProperty("version") + " " + "unshaded" + ".jar" } group = 'com.willfp' archivesBaseName = project.name version = project.version java.sourceCompatibility = JavaVersion.VERSION_1_8 compileJava.options.encoding = 'UTF-8' build.dependsOn shadowJar publishing { publications { maven(MavenPublication) { from(components.java) } } }