PlaceholderAPI/build.gradle

146 lines
3.8 KiB
Groovy
Raw Normal View History

import org.apache.tools.ant.filters.ReplaceTokens
2020-07-14 18:56:49 +02:00
plugins {
2020-08-01 04:52:07 +02:00
id "java"
id "maven-publish"
2021-06-11 08:33:29 +02:00
id "org.cadixdev.licenser" version "0.6.0"
id "com.github.johnrengelman.shadow" version "7.0.0"
2020-07-14 18:56:49 +02:00
}
group "me.clip"
2020-08-04 18:47:05 +02:00
version "2.10.10-DEV-${System.getProperty("BUILD_NUMBER")}"
2020-07-14 18:56:49 +02:00
description "An awesome placeholder provider!"
2020-07-14 18:56:49 +02:00
repositories {
2020-08-01 04:52:07 +02:00
mavenCentral()
2021-07-07 09:37:35 +02:00
mavenLocal()
2020-08-01 04:52:07 +02:00
maven({ url = "https://repo.codemc.org/repository/maven-public" })
maven({ url = "https://hub.spigotmc.org/nexus/content/repositories/snapshots/" })
2021-07-06 18:59:17 +02:00
maven({ url = "https://oss.sonatype.org/content/repositories/snapshots/" })
2020-07-14 18:56:49 +02:00
}
dependencies {
implementation "com.google.code.gson:gson:2.8.6"
implementation "org.bstats:bstats-bukkit:2.2.1"
2020-08-01 04:52:07 +02:00
2021-07-06 18:59:17 +02:00
implementation "net.kyori:adventure-platform-bukkit:4.0.0-SNAPSHOT"
2021-07-07 09:37:35 +02:00
compileOnly "org.spigotmc:spigot:+"
2020-08-01 04:52:07 +02:00
compileOnly "org.jetbrains:annotations:19.0.0"
testImplementation "org.openjdk.jmh:jmh-core:1.23"
testImplementation "org.openjdk.jmh:jmh-generator-annprocess:1.23"
2021-06-11 08:33:29 +02:00
testImplementation "org.junit.jupiter:junit-jupiter-engine:5.6.2"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.6.2"
2020-07-14 18:56:49 +02:00
}
processResources {
2021-07-01 16:24:01 +02:00
filter ReplaceTokens, tokens: [name: rootProject.name, version: project.version.toString(), description: project.description]
2020-07-14 18:56:49 +02:00
}
java {
2020-08-01 04:52:07 +02:00
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
withJavadocJar()
withSourcesJar()
}
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}
2020-07-14 18:56:49 +02:00
tasks.withType(Javadoc) {
failOnError false
options.addStringOption('Xdoclint:none', '-quiet')
options.addStringOption('encoding', 'UTF-8')
options.addStringOption('charSet', 'UTF-8')
2020-12-14 01:52:46 +01:00
}
2020-07-14 18:56:49 +02:00
shadowJar {
2020-08-01 04:52:07 +02:00
archiveClassifier.set("")
2020-07-31 16:46:27 +02:00
2021-07-07 09:37:35 +02:00
// destinationDirectory.set(file("server/1.17/plugins"))
// doLast {
// def path = "build/libs/PlaceholderAPI-2.10.10-DEV-null.jar"
//
// ["1.17", "1.8"].each {dest ->
// copy {
// from path
// into "server/${dest}/plugins/"
// }
// }
// }
2020-08-01 04:52:07 +02:00
relocate "org.bstats", "me.clip.placeholderapi.metrics"
2021-07-06 18:59:17 +02:00
relocate "com.google.gson", "me.clip.placeholderapi.libs.gson"
relocate "net.kyori", "me.clip.placeholderapi.libs.kyori"
}
license {
2020-08-01 04:52:07 +02:00
include '**/*.java'
2020-08-01 04:52:07 +02:00
matching('**/*.java') {
2020-08-01 05:04:06 +02:00
header = file('config/headers/main.txt')
2020-08-01 04:52:07 +02:00
}
2020-08-01 04:52:07 +02:00
ext {
year = 2021
2020-08-01 04:52:07 +02:00
}
}
test {
2020-08-01 04:52:07 +02:00
useJUnitPlatform()
}
2021-06-11 08:33:29 +02:00
configurations {
testImplementation {
extendsFrom(compileOnly)
}
2020-07-14 18:56:49 +02:00
}
publishing {
2020-08-01 04:52:07 +02:00
repositories {
maven {
if (version.contains("-DEV")) {
2020-08-01 04:52:07 +02:00
url = uri("https://repo.extendedclip.com/content/repositories/dev/")
} else {
url = uri("https://repo.extendedclip.com/content/repositories/placeholderapi/")
}
credentials {
username = System.getenv("JENKINS_USER")
password = System.getenv("JENKINS_PASS")
}
}
}
publications {
mavenJava(MavenPublication) {
artifactId = "placeholderapi"
from components.java
pom.withXml {
2020-08-06 20:05:33 +02:00
// some are having issues with bstats so we might need to add that to the pom as well
2020-08-01 04:52:07 +02:00
asNode().appendNode("packaging", "jar")
asNode().remove(asNode().get("dependencies"))
2020-08-03 21:23:48 +02:00
def dependenciesNode = asNode().appendNode("dependencies")
2020-08-03 21:38:53 +02:00
// jetbrains annotations
def jetbrainsAnnotations = dependenciesNode.appendNode("dependency")
jetbrainsAnnotations.appendNode("groupId", "org.jetbrains")
jetbrainsAnnotations.appendNode("artifactId", "annotations")
jetbrainsAnnotations.appendNode("version", "19.0.0")
2020-08-01 04:52:07 +02:00
}
}
}
}
2021-01-03 16:35:37 +01:00
publish.dependsOn clean, test, jar