我有一个相当标准的 kotlin 多平台 (mpp) build.gradle.kts
,它使用应用程序插件和com.github.johnrengelman.shadow
我成功创建了一个java -jar
可执行的胖罐子:
application {
mainClass.set(theMainClass)
}
tasks {
val shadowCreate by creating(com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar::class) {
manifest { attributes["Main-Class"] = theMainClass }
archiveClassifier.set("fat")
mergeServiceFiles()
from(kotlin.jvm().compilations.getByName("main").output)
configurations = mutableListOf(kotlin.jvm().compilations.getByName("main").compileDependencyFiles as Configuration)
}
val build by existing {
dependsOn(shadowCreate)
}
}
但现在我在如何让应用程序gradle run
任务分别让影子gradle runShadow
任务正确执行而苦苦挣扎。
有人有什么想法(kotlindsl)吗?