plugins { id("java-library") id("xyz.jpenilla.run-paper") version "3.0.2" id("com.gradleup.shadow") version "9.2.2" } repositories { mavenCentral() maven("https://repo.papermc.io/repository/maven-public/") } dependencies { compileOnly("io.papermc.paper:paper-api:26.1.2.build.+") compileOnly("net.luckperms:api:5.5") implementation("net.dv8tion:JDA:6.5.0") implementation("com.fasterxml.jackson.core:jackson-databind:2.22.1") testImplementation(platform("org.junit:junit-bom:5.13.4")) testImplementation("org.junit.jupiter:junit-jupiter") testImplementation("net.luckperms:api:5.5") testImplementation("org.mockito:mockito-core:5.18.0") testRuntimeOnly("org.junit.platform:junit-platform-launcher") } java { toolchain.languageVersion = JavaLanguageVersion.of(25) } tasks { test { useJUnitPlatform() } shadowJar { archiveClassifier.set("") mergeServiceFiles() } jar { archiveClassifier.set("plain") } build { dependsOn(shadowJar) } runServer { // Configure the Minecraft version for our task. // This is the only required configuration besides applying the plugin. // Your plugin's jar (or shadowJar if present) will be used automatically. minecraftVersion("26.1.2") jvmArgs("-Xms2G", "-Xmx2G") } processResources { val props = mapOf("version" to version, "description" to project.description) filesMatching("plugin.yml") { expand(props) } } }