如何在外部构建文件中应用和配置gradle插件

如何在外部构建文件中应用和配置gradle插件,gradle,build.gradle,Gradle,Build.gradle,我试图将build.gradle文件拆分成几个较小的文件,以减小大小并封装不同的功能。我的结局是: // build.gradle plugins { id "org.jetbrains.kotlin.jvm" version "1.2.30" } apply from: 'klint.gradle' 及 但是当运行/gradlew ktlintCheck时,我得到: * Where: Script '...klint.gradle' line: 14 * What went wron

我试图将
build.gradle
文件拆分成几个较小的文件,以减小大小并封装不同的功能。我的结局是:

// build.gradle
plugins {
  id "org.jetbrains.kotlin.jvm" version "1.2.30"
}

apply from: 'klint.gradle'

但是当运行
/gradlew ktlintCheck
时,我得到:

* Where:
Script '...klint.gradle' line: 14

* What went wrong:
A problem occurred evaluating script.
> Could not find method klint() for arguments [klint_bg1dwp9kv02sa992h3mtpaomq$_run_closure1@1c656f64] on root project 'proj' of type org.gradle.api.Project.

我假设应用了插件(因为没有发生错误),但配置不起作用。如何在外部脚本中应用和配置插件?

如果没有
设置。gradle
文件,请创建一个并添加以下行

include 'klint' 

buildscript
块在开始时进行评估,并确定哪些插件和任务可用于构建脚本的其余部分


根据我的经验,您尝试执行的操作(将
buildscript
块放入
apply
脚本)不受支持。

根据我的经验,您应该在基本build.gradle文件和外部构建文件中都有一份buildscript代码块的副本


我不喜欢这样的设计,但这是目前实现我们目标的唯一途径。你可以试一试。

不行。这没用。事实上,如果tha能起作用,我会感到惊讶,因为根据文档HM,include用于将给定项目添加到构建中。那太不幸了。你认为可以应用另一个插件并在外部脚本中配置它吗?那么主脚本中的
buildscript
步骤和外部脚本中的
apply-plugin:…klint
kling{…}
是否也是如此?
include 'klint'