Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!
AVOID using the Kotlin DSL for Gradle! The Kotlin DSL for Gradle is not mature and lack of documentation at this time. Stick with Groovy DSL for Gradle.
shadowJar
https://github.com/johnrengelman/shadow/issues/317
https://github.com/csolem/gradle-shadow-jar-with-kotlin-dsl/blob/master/build.gradle.kts
https://www.artificialworlds.net/blog/2019/07/12/building-an-all-in-one-jar-in-gradle-with-the-kotlin-dsl/