import org.jetbrains.gradle.ext.settings import org.jetbrains.gradle.ext.taskTriggers plugins { kotlin("jvm") version "2.0.20-Beta1" // kotlin("kapt") version "2.0.20-Beta1" kotlin("plugin.serialization") version "2.0.20-Beta1" id("com.github.johnrengelman.shadow") version "8.1.1" id("eclipse") id("org.jetbrains.gradle.plugin.idea-ext") version "1.1.8" } group = "cn.disy920" version = "1.0.0" repositories { mavenCentral() maven("https://repo.papermc.io/repository/maven-public/") { name = "papermc-repo" } maven("https://oss.sonatype.org/content/groups/public/") { name = "sonatype" } } dependencies { compileOnly("com.velocitypowered:velocity-api:3.4.0-SNAPSHOT") compileOnly("com.velocitypowered:velocity-api:3.4.0-SNAPSHOT") compileOnly("org.jetbrains.kotlin:kotlin-stdlib-jdk8") compileOnly("org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.0") } val targetJavaVersion = 17 kotlin { jvmToolchain(targetJavaVersion) } val templateSource = file("src/main/templates") val templateDest = layout.buildDirectory.dir("generated/sources/templates") val generateTemplates = tasks.register("generateTemplates") { val props = mapOf("version" to project.version) inputs.properties(props) from(templateSource) into(templateDest) expand(props) } sourceSets.main.configure { java.srcDir(generateTemplates.map { it.outputs }) } project.idea.project.settings.taskTriggers.afterSync(generateTemplates) project.eclipse.synchronizationTasks(generateTemplates)