PlotSquared/Core/build.gradle
2020-04-11 02:28:15 +02:00

90 lines
3.1 KiB
Groovy

repositories {
maven { url = "https://jitpack.io" }
}
def textVersion = "3.0.2"
dependencies {
compile group: 'org.json', name: 'json', version: '20190722'
implementation("org.yaml:snakeyaml:1.25")
implementation("com.google.code.gson:gson:2.8.6") {
because("Minecraft uses GSON 2.8.0")
force = true
}
implementation("org.projectlombok:lombok:1.18.12")
compileOnly("org.projectlombok:lombok:1.18.12")
testCompileOnly("org.projectlombok:lombok:1.18.8")
annotationProcessor("org.projectlombok:lombok:1.18.8")
testAnnotationProcessor("org.projectlombok:lombok:1.18.8")
implementation("org.jetbrains.kotlin:kotlin-stdlib:1.3.61")
implementation("org.jetbrains:annotations:18.0.0")
}
sourceCompatibility = 1.8
targetCompatibility = 1.8
processResources {
from("src/main/resources") {
include "plugin.properties"
expand(
version: "${project.parent.version}",
name: project.parent.name,
commit: "${git.head().abbreviatedId}",
date: "${git.head().getDate().format("yy.MM.dd")}",
)
}
}
//noinspection GroovyAssignabilityCheck
jar.archiveFileName = "PlotSquared-CoreAPI-${project.parent.version}.jar"
jar.destinationDirectory = file("../mvn/com/github/intellectualsites/plotsquared/PlotSquared-CoreAPI/" + project.parent.version)
task createPom {
doLast {
pom {
project {
groupId = "com.github.intellectualsites.plotsquared"
artifactId = "PlotSquared-CoreAPI"
version = project.parent.version
}
}.writeTo("../mvn/com/github/intellectualsites/plotsquared/PlotSquared-CoreAPI/${project.parent.version}/PlotSquared-CoreAPI-${project.parent.version}.pom")
pom {
project {
groupId = "com.github.intellectualsites.plotsquared"
artifactId = "PlotSquared-CoreAPI"
version = "latest"
}
}.writeTo("../mvn/com/github/intellectualsites/plotsquared/PlotSquared-CoreAPI/latest/PlotSquared-CoreAPI-latest.pom")
}
}
task copyFiles {
doLast {
copy {
from("../mvn/com/github/intellectualsites/plotsquared/PlotSquared-CoreAPI/${project.parent.version}/")
into("../mvn/com/github/intellectualsites/plotsquared/PlotSquared-CoreAPI/latest/")
include("*.jar")
rename("PlotSquared-CoreAPI-${project.parent.version}.jar", "PlotSquared-CoreAPI-latest.jar")
}
}
}
shadowJar {
dependencies {
include(dependency("net.kyori:text-api:3.0.2"))
include(dependency("net.kyori:text-serializer-gson:3.0.2"))
include(dependency("net.kyori:text-serializer-legacy:3.0.2"))
include(dependency("net.kyori:text-serializer-plain:3.0.2"))
}
relocate("org.json", "com.github.intellectualsites.plotsquared.json")
relocate('net.kyori.text', 'com.github.intellectualsites.plotsquared.formatting.text')
}
shadowJar.doLast {
task ->
ant.checksum file: task.archivePath
}
build.dependsOn(shadowJar)
build.finalizedBy(copyFiles)
copyFiles.dependsOn(createPom)