Files
hamster-script/build.gradle.kts
2024-03-19 15:24:22 +08:00

71 lines
2.2 KiB
Plaintext

@file:Suppress("VulnerableLibrariesLocal")
plugins {
id("java")
id("com.github.johnrengelman.shadow") version "8+"
}
group = "cn.hamster3.mc.plugin"
version = "1.0.6"
description = "为Minecraft服务器导入 Nashorn 引擎来执行 JavaScript 脚本"
repositories {
maven {
url = uri("https://maven.airgame.net/maven-public/")
}
}
dependencies {
// https://mvnrepository.com/artifact/org.jetbrains/annotations
compileOnly("org.jetbrains:annotations:24.1.0")
// https://mvnrepository.com/artifact/org.projectlombok/lombok
compileOnly("org.projectlombok:lombok:1.18.30")
annotationProcessor("org.projectlombok:lombok:1.18.30")
compileOnly("org.spigotmc:spigot-api:1.18.2-R0.1-SNAPSHOT")
// https://mvnrepository.com/artifact/org.openjdk.nashorn/nashorn-core
implementation("org.openjdk.nashorn:nashorn-core:15.4")
}
tasks {
java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
withSourcesJar()
}
processResources {
filesMatching("plugin.yml") {
expand(project.properties)
}
val map = mutableMapOf<String, String>()
map["BUILD_ID"] = System.getenv().getOrDefault("BUILD_ID", "DEV")
map["BUILD_NUMBER"] = System.getenv().getOrDefault("BUILD_NUMBER", "DEV")
map["BUILD_DISPLAY_NAME"] = System.getenv().getOrDefault("BUILD_DISPLAY_NAME", "DEV")
map["JOB_URL"] = System.getenv().getOrDefault("JOB_URL", "DEV")
map["BUILD_URL"] = System.getenv().getOrDefault("BUILD_URL", "DEV")
map["GIT_COMMIT"] = System.getenv().getOrDefault("GIT_COMMIT", "DEV")
filesMatching("jenkins.yml") {
expand(map)
}
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
jar {
destinationDirectory = rootProject.layout.buildDirectory
}
shadowJar {
destinationDirectory = rootProject.layout.buildDirectory
}
withType<JavaCompile>().configureEach {
options.encoding = "UTF-8"
}
withType<Jar>().configureEach {
archiveBaseName = "HamsterScript"
from(rootProject.file("LICENSE"))
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
build {
dependsOn(shadowJar)
}
}