mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2024-10-29 08:10:29 +01:00
98 lines
3.3 KiB
Groovy
98 lines
3.3 KiB
Groovy
repositories {
|
|
maven { url = "https://jitpack.io" }
|
|
maven { url = "https://mvn.intellectualsites.com/content/repositories/snapshots" }
|
|
}
|
|
def textVersion = "3.0.2"
|
|
|
|
dependencies {
|
|
implementation("org.yaml:snakeyaml:1.26")
|
|
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.4.0")
|
|
implementation("org.jetbrains:annotations:20.1.0")
|
|
implementation("org.khelekore:prtree:1.7.0-SNAPSHOT")
|
|
implementation("com.intellectualsites.paster:Paster:1.0.2-SNAPSHOT"){ transitive = false }
|
|
}
|
|
|
|
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-${project.parent.version}.jar"
|
|
jar.destinationDirectory = file("../mvn/com/plotsquared/PlotSquared/" + project.parent.version)
|
|
task createPom {
|
|
doLast {
|
|
pom {
|
|
project {
|
|
groupId = rootProject.group
|
|
artifactId = "PlotSquared"
|
|
version = project.parent.version
|
|
}
|
|
}.writeTo("../mvn/com/plotsquared/PlotSquared/${project.parent.version}/PlotSquared-${project.parent.version}.pom")
|
|
pom {
|
|
project {
|
|
groupId = rootProject.group
|
|
artifactId = "PlotSquared"
|
|
version = "latest"
|
|
}
|
|
}.writeTo("../mvn/com/plotsquared/PlotSquared/latest/PlotSquared-latest.pom")
|
|
.writeTo("pom.xml")
|
|
}
|
|
}
|
|
|
|
task copyFiles {
|
|
doLast {
|
|
copy {
|
|
from("../mvn/com/plotsquared/PlotSquared/${project.parent.version}/")
|
|
into("../mvn/com/plotsquared/PlotSquared/latest/")
|
|
include("*.jar")
|
|
rename("PlotSquared-${project.parent.version}.jar", "PlotSquared-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"))
|
|
include(dependency("org.khelekore:prtree:1.7.0-SNAPSHOT"))
|
|
include(dependency("com.intellectualsites.paster:Paster:1.0.2-SNAPSHOT"))
|
|
}
|
|
relocate('net.kyori.text', 'com.plotsquared.formatting.text')
|
|
relocate("org.json", "com.plotsquared.json") {
|
|
exclude "org/json/simple/**"
|
|
}
|
|
relocate('com.intellectualsites.paster', 'com.plotsquared.core.paster')
|
|
}
|
|
|
|
shadowJar.doLast {
|
|
task ->
|
|
ant.checksum file: task.archivePath
|
|
}
|
|
|
|
build.dependsOn(shadowJar)
|
|
|
|
build.finalizedBy(copyFiles)
|
|
copyFiles.dependsOn(createPom)
|