我有带有任务kotlin2js
的compileKotlin2Js
插件。我这样配置:
val compileKotlin2Js: Kotlin2JsCompile by tasks
compileKotlin2Js.kotlinOptions {
main = "call"
outputFile = "${projectDir}/build/app.js"
}
现在,我想创建类似的任务,但要使用其他
kotlinOptions
。例如:.kotlinOptions {
main = "noCall"
outputFile = "${projectDir}/build/lib.js"
}
怎么做?
更新:我也试图做这样的事情:
tasks.register<Kotlin2JsCompile>("myCompile2Js") {
kotlinOptions {
main = "noCall"
outputFile = "${projectDir}/build/lib.js"
}
}
但是会产生错误:
Execution failed for task ':myCompile2Js'.
> lateinit property destinationDirProvider has not been initialized
我也尝试指定
destinationDir
。错误消失了,但是这样的任务不会产生任何构建。 最佳答案
我还没有测试过,但是我相信可以通过以下方法解决问题:
tasks.register<Kotlin2JsCompile>("myCompile2Js") {
kotlinOptions {
main = "noCall"
outputFile = "${projectDir}/build/lib.js"
}
}
或者,如果您以后需要引用该任务:
val myCompile2Js by tasks.creating(Kotlin2JsCompile::class)
myCompile2Js.kotlinOptions {
main = "noCall"
outputFile = "${projectDir}/build/lib.js"
}