Aleksey Tomin
05/21/2026, 8:17 AMval copyDependencies by tasks.registering(Copy::class) {
from(configurations.runtimeClasspath)
into(layout.buildDirectory.dir("libs/lib"))
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
tasks.build {
dependsOn(copyDependencies)
}
tasks.jar {
archiveFileName.set("myApp.jar")
manifest.attributes["Main-Class"] = "MainClassKt"
manifest.attributes["Class-Path"] = configurations.runtimeClasspath.get().files.joinToString(" ") { "lib/${it.name}" }
}Anton Prokhorov
05/21/2026, 8:23 AMkotlin packageAleksey Tomin
05/21/2026, 8:43 AMAnton Prokhorov
05/21/2026, 8:49 AMAnton Prokhorov
05/21/2026, 8:50 AMAnton Prokhorov
05/21/2026, 9:33 AMAleksey Tomin
05/22/2026, 2:09 PMAnton Prokhorov
05/22/2026, 2:13 PMAleksey Tomin
05/22/2026, 2:35 PMtasks:
collectLibs:
action: !collectLibs
outputDir: ${taskOutputDir}
baseClasspath: ${module.runtimeClasspath}
rootDir: ${module.jar}Aleksey Tomin
05/22/2026, 2:36 PM