Kafkatorio/buildSrc/build.gradle.kts

83 lines
2.2 KiB
Text
Raw Normal View History

import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
idea
`kotlin-dsl`
2021-10-10 21:26:11 +02:00
kotlin("jvm") version "1.5.31"
`java-gradle-plugin`
}
gradlePlugin {
plugins {
create("tstl") {
id = "dev.adamko.tstl"
description =
"Gradle plugin for TypescriptToLua. Requires plugin `com.github.node-gradle.node`."
implementationClass = "dev.adamko.gradle.tstl.TstlPlugin"
}
create("json-kotlin-schema-gen") {
id = "dev.adamko.json-kotlin-schema-gen"
description =
"Gradle plugin for 'json-kotlin-schema-codegen' - Code generation for JSON Schema (Draft 07) https://github.com/pwall567/json-kotlin-schema-codegen"
implementationClass = "dev.adamko.gradle.jsonkotlinschemagen.JsonKotlinSchemaGenPlugin"
}
}
}
dependencies {
val kotlinVersion = "1.5.31"
2021-10-10 21:26:11 +02:00
// implementation(gradleApi())
// implementation("org.gradle.kotlin:gradle-kotlin-dsl-plugins:${org.gradle.kotlin.dsl.support.expectedKotlinDslPluginsVersion}")
// implementation("org.gradle.kotlin:gradle-kotlin-dsl-plugins:${kotlinVersion}")
implementation(platform("org.jetbrains.kotlin:kotlin-bom:$kotlinVersion"))
2021-10-25 23:23:28 +02:00
implementation("org.jetbrains.kotlin:kotlin-serialization")
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin")
implementation("com.github.node-gradle:gradle-node-plugin:3.1.1")
implementation("net.pwall.json:json-kotlin-schema-codegen:0.53")
}
val projectJvmTarget = "11"
tasks.withType<KotlinCompile>().configureEach {
2021-11-03 09:48:30 +01:00
kotlinOptions {
jvmTarget = projectJvmTarget
apiVersion = "1.5"
languageVersion = "1.5"
2021-11-03 09:48:30 +01:00
}
kotlinOptions.freeCompilerArgs += listOf(
"-Xopt-in=kotlin.OptIn",
"-Xopt-in=kotlin.RequiresOptIn",
"-Xopt-in=kotlin.ExperimentalStdlibApi",
"-Xopt-in=kotlin.time.ExperimentalTime",
"-Xopt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
"-Xopt-in=kotlinx.serialization.ExperimentalSerializationApi",
)
}
kotlin {
jvmToolchain {
(this as JavaToolchainSpec).languageVersion.set(JavaLanguageVersion.of(projectJvmTarget))
}
kotlinDslPluginOptions {
jvmTarget.set(projectJvmTarget)
}
}
idea {
module {
isDownloadSources = true
isDownloadJavadoc = true
}
}