Files
AOP/build.gradle.kts
2025-01-05 18:19:17 +13:00

81 lines
2.2 KiB
Plaintext

import de.nilsdruyen.gradle.ftp.UploadExtension
plugins {
kotlin("jvm") version "2.1.20-Beta1"
id("com.gradleup.shadow") version "8.3.5"
id("io.papermc.paperweight.userdev") version "2.0.0-beta.11"
id("de.nilsdruyen.gradle-ftp-upload-plugin") version "0.5.0"
}
group = "com.pobnellion"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
maven("https://repo.papermc.io/repository/maven-public/") {
name = "papermc-repo"
}
maven("https://oss.sonatype.org/content/groups/public/") {
name = "sonatype"
}
maven("https://repo.dmulloy2.net/repository/public/") {
name = "dmulloy2-repo"
}
maven("https://maven.enginehub.org/repo/") {
name = "enginehub"
}
}
dependencies {
// compileOnly("io.papermc.paper:paper-api:1.21.3-R0.1-SNAPSHOT")
// compileOnly("com.comphenix.protocol:ProtocolLib:5.3.0")
compileOnly("com.fastasyncworldedit:FastAsyncWorldEdit-Bukkit")
compileOnly(files("libs/ProtocolLib.jar"))
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
implementation(platform("com.intellectualsites.bom:bom-newest:1.51")) // Ref: https://github.com/IntellectualSites/bom
paperweight.paperDevBundle("1.21.4-R0.1-SNAPSHOT")
}
val targetJavaVersion = 21
kotlin {
jvmToolchain(targetJavaVersion)
}
tasks.build {
dependsOn("shadowJar")
}
tasks.processResources {
val props = mapOf("version" to version)
inputs.properties(props)
filteringCharset = "UTF-8"
filesMatching("plugin.yml") {
expand(props)
}
}
tasks.jar {
manifest {
attributes["paperweight-mappings-namespace"] = "mojang"
}
}
tasks.shadowJar {
manifest {
attributes["paperweight-mappings-namespace"] = "mojang"
}
}
configure<UploadExtension> {
host = properties.getOrDefault("ftp.host", "").toString()
port = properties.getOrDefault("ftp.port", 22).toString().toInt()
username = properties.getOrDefault("ftp.username", "").toString()
password = properties.getOrDefault("ftp.password", "").toString()
sourceDir = "${layout.buildDirectory.get()}/libs"
targetDir = "/plugins/"
clearDirectoryBeforeUpload = false
}
tasks.uploadFilesToFtp {
dependsOn("shadowJar")
}