@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") } java { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 withSourcesJar() } val templates = sourceSets.create("templates")!! 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 } jar { archiveBaseName = "HamsterBall-Bridge" destinationDirectory = rootProject.layout.buildDirectory } processResources { filesMatching(listOf("plugin.yml", "bungee.yml", "update.yml")) { expand(project.properties) } duplicatesStrategy = DuplicatesStrategy.EXCLUDE } }