fun DependencyHandler.shadowApi(notation: Any) { shadow(notation) api(notation) } plugins { `java-library` id("io.papermc.paperweight.userdev") version "1.5.5" id("xyz.jpenilla.run-paper") version "2.0.1" } group = "net.mysterio" version = "1.0-SNAPSHOT" description = "A base module containing FlashAPI" java { toolchain.languageVersion.set(JavaLanguageVersion.of(17)) } tasks.withType { archiveFileName.set("FlashAPI.jar") } repositories { mavenCentral() mavenLocal() } dependencies { testImplementation("org.junit.jupiter:junit-jupiter-api:5.9.2") testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.9.2") compileOnly(kotlin("stdlib-jdk8")) shadow(kotlin("stdlib")) compileOnly("com.mojang:authlib:3.16.29") paperweight.paperDevBundle("1.20-R0.1-SNAPSHOT") } tasks { assemble { dependsOn(reobfJar) } compileJava { options.encoding = Charsets.UTF_8.name() options.release.set(17) } javadoc { options.encoding = Charsets.UTF_8.name() } processResources { filteringCharset = Charsets.UTF_8.name() val props = mapOf( "name" to project.name, "version" to project.version, "description" to project.description, "apiVersion" to "1.20" ) inputs.properties(props) filesMatching("plugin.yml") { expand(props) } } }