import org.apache.tools.ant.filters.ReplaceTokens plugins { id 'com.github.johnrengelman.shadow' version '5.1.0' id 'maven-publish' id 'java' } sourceCompatibility = 1.8 targetCompatibility = 1.8 compileJava.options.encoding = 'UTF-8' group = 'dev.esophose' version = '7.16' java { withJavadocJar() withSourcesJar() } repositories { mavenCentral() jcenter() maven { url = 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/' } maven { url = 'https://repo.codemc.org/repository/maven-public' } maven { url = 'http://repo.extendedclip.com/content/repositories/placeholderapi/' } maven { url = 'https://repo.rosewooddev.io/repository/public/' } } dependencies { compile 'org.slf4j:slf4j-api:1.7.25' compile 'org.slf4j:slf4j-nop:1.7.25' compile 'com.zaxxer:HikariCP:3.2.0' compile 'org.bstats:bstats-bukkit-lite:1.7' compile 'org.codemc.worldguardwrapper:worldguardwrapper:1.1.9-SNAPSHOT' compileOnly 'com.googlecode.json-simple:json-simple:1.1.1' compileOnly 'org.jetbrains:annotations:16.0.2' compileOnly 'me.clip:placeholderapi:2.10.4' compileOnly 'org.xerial:sqlite-jdbc:3.23.1' compileOnly 'org.spigotmc:spigot:1.16.3' } shadowJar { archiveClassifier.set(null) minimize() relocate('org.bstats', 'dev.esophose.playerparticles.libs.bstats') relocate('org.slf4j', 'dev.esophose.playerparticles.libs.slf4j') relocate('com.zaxxer.hikari', 'dev.esophose.playerparticles.libs.hikaricp') relocate('org.codemc.worldguardwrapper', 'dev.esophose.playerparticles.libs.worldguardwrapper') } processResources { from (sourceSets.main.resources.srcDirs) { include '**/*.yml' filter ReplaceTokens, tokens: ["version": project.property("version")] } } publishing { publications { shadow(MavenPublication) { publication -> project.shadow.component(publication) } mavenJava(MavenPublication) { artifactId = 'playerparticles' from components.java versionMapping { usage('java-api') { fromResolutionOf('runtimeClasspath') } usage('java-runtime') { fromResolutionResult() } } pom { name = 'playerparticles' } } } repositories { if (project.hasProperty('mavenUsername') && project.hasProperty('mavenPassword')) { maven { credentials { username project.mavenUsername password project.mavenPassword } def releasesRepoUrl = 'https://repo.codemc.org/repository/maven-releases/' def snapshotsRepoUrl = 'https://repo.codemc.org/repository/maven-snapshots/' url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl } } } } javadoc { options.encoding = 'UTF-8' if (JavaVersion.current().isJava9Compatible()) { options.addBooleanOption('html5', true) } } build.dependsOn shadowJar