@file:Suppress("VulnerableLibrariesLocal") plugins { id("java") } group = "cn.hamster3.mc.plugin" version = "1.5.0" description = "将 HamsterBall 转换成 HamsterService 兼容的 API" repositories { maven("https://maven.airgame.net/maven-public/") } dependencies { // https://mvnrepository.com/artifact/org.jetbrains/annotations compileOnly("org.jetbrains:annotations:24.1.0") compileOnly("org.spigotmc:spigot-api:1.18.2-R0.1-SNAPSHOT") compileOnly("net.md-5:bungeecord-api:1.20-R0.1-SNAPSHOT") compileOnly("com.velocitypowered:velocity-api:3.3.0-SNAPSHOT") annotationProcessor("com.velocitypowered:velocity-api:3.3.0-SNAPSHOT") compileOnly("cn.hamster3.mc.plugin:core-bukkit:+") compileOnly("cn.hamster3.mc.plugin:ball-bukkit:+") compileOnly("me.clip:placeholderapi:2.11.6") } sourceSets.create("templates") { java { srcDir("src/main/templates") } } val templateSource = file("src/main/templates") val templateDest = layout.buildDirectory.dir("generated/sources/templates") val generateTemplates = tasks.register("generateTemplates") { from(templateSource) into(templateDest) expand(project.properties) } sourceSets.main.get().java.srcDir(generateTemplates.map { it.outputs }) tasks { withType().configureEach { options.encoding = "UTF-8" } withType().configureEach { from(rootProject.file("LICENSE")) duplicatesStrategy = DuplicatesStrategy.EXCLUDE } java { withSourcesJar() } jar { archiveBaseName = "HamsterBall-Bridge" destinationDirectory = rootProject.layout.buildDirectory } processResources { filesMatching(listOf("plugin.yml", "bungee.yml", "update.yml")) { expand(project.properties) } duplicatesStrategy = DuplicatesStrategy.EXCLUDE } }