gradle-kotlin-dsl - 在 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")
}
解决方案
推荐阅读
- google-cloud-platform - I have problem to connect me glassfish server from compute engine
- ios - How to send instant email with mail chimp in Swift?
- c# - 不允许请求的远程注册表访问
- javascript - Changing number in div to 2 decimal places
- mysql - How to optimize the "IN (SELECT..." query
- mysql - 1列中的Mysql百分比计算
- mybatis - 如何使用 Mybatis xml foreach 标签将 insertSelective 修补到数据库中
- .net - 可以创建 .NetCore 和 Angular2 混合应用程序
- python - 如何使用 OpenCV 转换颜色?
- javascript - 使用表单数据上传多个文件,表单数据结构在 1 个文件与 2 个文件与 3 个以上文件上发生变化