我正在将我的项目与多个模块转换为使用预编译的Gradle插件。此项目还使用Gradle的版本目录(libs.versions.toml),其中的文档明确显示了如何将其与buildSrc目录的build.gradle.kts共享,该目录运行良好。但不幸的是,这并不适用于插件本身。范例:
build-logic/settings.gradle.kts
rootProject.name = "build-logic"
dependencyResolutionManagement {
versionCatalogs {
create("libs") {
from(files("../gradle/libs.versions.toml"))
}
}
}
build-logic/build.gradle.kts:
plugins {
`kotlin-dsl`
`kotlin-dsl-precompiled-script-plugins`
}
repositories {
mavenCentral()
}
dependencies {
implementation(libs.plugins.kotlin.jvm) // works fine
}
构建逻辑/src/main/Kotlin/my-template.gradle.kts
plugins {
id("org.jetbrains.kotlin.jvm")
}
repositories {
mavenCentral()
}
dependencies {
implementation(libs.kotlinx.serialization) // "Unresolved reference: libs"
}
可以在my-template.gradle.kts
中引用“libs”吗?
谢谢你
1条答案
按热度按时间velaa5lx1#
因此,此请求存在open issue,并且已找到解决方法。要在预编译的插件中使用
libs
,您必须添加以下内容:build-logic/build.gradle.kts
build-logic/src/main/Kotlin/my-template.gradle.kts
信用