import org.gradle.jvm.tasks.Jar description = "Umbrella : Backend" plugins { application } application{ mainClass = "de.srsoftware.umbrella.backend.Application" } dependencies{ implementation(project(":core")) implementation(project(":documents")) implementation(project(":legacy")) implementation(project(":messages")) implementation(project(":translations")) implementation(project(":user")) implementation(project(":web")) implementation("de.srsoftware:configuration.api:1.0.2") implementation("de.srsoftware:configuration.json:1.0.3") implementation("de.srsoftware:tools.optionals:1.0.0") implementation("de.srsoftware:tools.slf4j2syslog:1.0.1") // this provides a slf4j implementation that forwards to System.Logger implementation("de.srsoftware:tools.util:2.0.3") implementation("org.json:json:20240303") } tasks.jar { manifest.attributes["Main-Class"] = "de.srsoftware.umbrella.backend.Application" duplicatesStrategy = DuplicatesStrategy.EXCLUDE val dependencies = configurations .runtimeClasspath .get() .map(::zipTree) // OR .map { zipTree(it) } from(dependencies) }