44 lines
No EOL
1,009 B
Kotlin
44 lines
No EOL
1,009 B
Kotlin
plugins {
|
|
kotlin("jvm") version "2.1.20"
|
|
kotlin("plugin.serialization") version "2.1.21"
|
|
application
|
|
}
|
|
|
|
group = "me.koendev"
|
|
version = "1.0.0"
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.8.1")
|
|
implementation("de.thelooter:toml4j:0.8.1")
|
|
}
|
|
|
|
tasks.test {
|
|
useJUnitPlatform()
|
|
}
|
|
kotlin {
|
|
jvmToolchain(21)
|
|
}
|
|
|
|
application.mainClass = "me.koendev.MainKt"
|
|
|
|
tasks.withType<Jar> {
|
|
// Otherwise you'll get a "No main manifest attribute" error
|
|
manifest {
|
|
attributes["Main-Class"] = "me.koendev.MainKt"
|
|
}
|
|
|
|
// To avoid the duplicate handling strategy error
|
|
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
|
|
|
// To add all of the dependencies otherwise a "NoClassDefFoundError" error
|
|
from(sourceSets.main.get().output)
|
|
|
|
dependsOn(configurations.runtimeClasspath)
|
|
from({
|
|
configurations.runtimeClasspath.get().filter { it.name.endsWith("jar") }.map { zipTree(it) }
|
|
})
|
|
} |