我在基于Groovy的构建脚本中具有以下内容。如何在基于Kotlin的脚本中执行相同操作?
processResources {
filesMatching('application.properties'){
expand(project.properties)
}
}
最佳答案
我认为任务应如下所示:
编辑:根据comment存储库中的此gradle/kotlin-dsl。任务配置应以这种方式工作:
import org.gradle.language.jvm.tasks.ProcessResources
apply {
plugin("java")
}
(tasks.getByName("processResources") as ProcessResources).apply {
filesMatching("application.properties") {
expand(project.properties)
}
}
这很丑。因此,我建议为此使用以下实用程序功能,直到完成一个上游:
configure<ProcessResources>("processResources") {
filesMatching("application.properties") {
expand(project.properties)
}
}
inline fun <reified C> Project.configure(name: String, configuration: C.() -> Unit) {
(this.tasks.getByName(name) as C).configuration()
}