如何解决在 gradle kts 项目中与 buildSrc 共享跨子项目的类型变量
我的情况是我有一个 Kotlin/JS
项目,它必须使用 LEGACY
或 IR
定义编译器类型。
到现在为止,我直接将这些值之一设置到 js()
中,用于每个模块的 kotlin
范围。例如:
kotlin {
js(LEGACY) {
// snip
}
}
我的问题是我必须对所有模块都这样做。如果我想在 IR
和 LEGACY
之间切换,我必须手动申请所有模块。
我想要一个常量来保存编译器类型值并在子模块之间共享,然后我可以传递给 js(compileType)
。
目前,我可以用
allprojects {
ext {
set("compilerType",KotlinjsCompilerType.LEGACY)
}
}
val compilerType: KotlinjsCompilerType by ext
但是,我必须将 val compilerType ...
复制到所有模块的 build.gradle.kts
中。
我想 buildSrc
可能是一个解决方案,但我不知道如何向它添加 Kotlin/JS
依赖项,以便我可以为 compilerType
创建一个常量。我尝试添加 JS 插件但没有成功。
plugins {
kotlin("js")
id("org.jetbrains.kotlin.js")
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。