72 lines
2.2 KiB
Kotlin
72 lines
2.2 KiB
Kotlin
plugins {
|
|
application
|
|
kotlin("jvm") version masterLibs.versions.kotlinVersion
|
|
kotlin("plugin.serialization") version masterLibs.versions.kotlinVersion
|
|
id("org.graalvm.buildtools.native") version "0.11.3"
|
|
alias(masterLibs.plugins.versionPlugin)
|
|
}
|
|
|
|
application {
|
|
mainClass = "net.keinekekse.MainKt"
|
|
}
|
|
// FAT JAR
|
|
//tasks.withType<Jar> {
|
|
// manifest {
|
|
// attributes["Main-Class"] = "net.keinekekse.MainKt"
|
|
// }
|
|
//
|
|
// // Mit dem folgenden werden alle Abhängigkeiten in das Jar gepackt
|
|
// // verhindert java.lang.NoClassDefFoundError: kotlin/jvm/internal/Intrinsics
|
|
//
|
|
// // To avoid the duplicate handling strategy error
|
|
// duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
|
//
|
|
// // To add all of the dependencies -> fat jar
|
|
// from(sourceSets.main.get().output)
|
|
//
|
|
// dependsOn(configurations.runtimeClasspath)
|
|
// from({
|
|
// configurations.runtimeClasspath.get().filter { it.name.endsWith("jar") }.map { zipTree(it) }
|
|
// })
|
|
//}
|
|
|
|
group = "net.keinekekse"
|
|
version = libs.versions.ebookcmdVersion.get()
|
|
description = "Serien-EPUBs in die Calibre-Bibliothek importieren oder\\n" +
|
|
"Metadaten von EPUB-Dateien anzeigen bzw. verändern."
|
|
extra["displayname"] = "eBook CMD"
|
|
extra["copyright"] = "Copyright (c) 2025-2026 Hartmut Bauer"
|
|
|
|
repositories {
|
|
maven("https://nexus.keinekekse.net/repository/maven-public/")
|
|
}
|
|
dependencies {
|
|
implementation(masterLibs.utilLibrary)
|
|
implementation(masterLibs.kotlinxSerialization)
|
|
implementation(masterLibs.kotlinxCoroutines)
|
|
|
|
implementation(masterLibs.exposedCore)
|
|
implementation(masterLibs.exposedCrypt)
|
|
implementation(masterLibs.exposedDao)
|
|
implementation(masterLibs.exposedJdbc)
|
|
implementation(masterLibs.exposedKotlinDatetime)
|
|
implementation(masterLibs.exposedJson)
|
|
implementation(masterLibs.exposedMoney)
|
|
implementation(masterLibs.sqliteJdbc)
|
|
}
|
|
|
|
kotlin {
|
|
jvmToolchain {
|
|
// etwas umständlich, aber nur so fkt es mit String
|
|
languageVersion.set(JavaLanguageVersion.of(masterLibs.versions.javaVersion.get()))
|
|
}
|
|
}
|
|
|
|
graalvmNative {
|
|
binaries {
|
|
named("main") {
|
|
buildArgs.add("--initialize-at-build-time")
|
|
}
|
|
}
|
|
}
|