Kotlin DSL Android库的共享文件

Kotlin DSL Android库的共享文件,android,kotlin,gradle,dsl,android-library,Android,Kotlin,Gradle,Dsl,Android Library,对于我们的多模块Android项目,我们将Kotlin DSL用于我们的项目build.gradle.kts、应用程序模块build.gradle.kts、settings.gradle.kts。但是,我们想将库模块.gradle文件转换为Kotlin DSL。我们遇到的问题是,在应用脚本时,我们得到了一个未解决的引用:android 我没有看到任何关于Android库的共享gradle.kts文件可以应用于Android库模块的明确例子。有两种方法,一种比另一种更复杂 Gradle脚本使用动态

对于我们的多模块Android项目,我们将Kotlin DSL用于我们的项目build.gradle.kts、应用程序模块build.gradle.kts、settings.gradle.kts。但是,我们想将库模块.gradle文件转换为Kotlin DSL。我们遇到的问题是,在应用脚本时,我们得到了一个
未解决的引用:android


我没有看到任何关于Android库的共享gradle.kts文件可以应用于Android库模块的明确例子。

有两种方法,一种比另一种更复杂

Gradle脚本使用动态解析,这就是为什么您可以将它们放置在任何目录中,然后将它们应用于构建文件

有两种方法可以解决这个问题,都涉及buildSrc/目录

  • 您可以使用kotlin dsl预编译脚本插件
  • 预编译脚本插件是作为 常规Kotlin源代码集,并以通常的方式分发,如java 类文件打包在某个库中,打算作为二进制文件使用 渐变插件

  • 您可以创建一个定制的Gradle插件来配置项目

  • 这是一个很好的例子,有更多的细节,回购协议显示了实施情况。

    谢谢这本指南的帮助,并且说得很清楚!我选择了预编译选项。