ConfigSlurper的groovy文件如何调用build.gradle中定义的方法?

时间:2015-10-13 19:47:29

标签: groovy gradle

我正在开发项目,其构建逻辑在gradle中定义,并且有一个build.gradle文件。现在,我们想使用groovy的配置Sluper来管理项目的属性。并且,我已将config.groovy文件放在包含项目的所有Helper类的文件夹中。 conf.groovy文件的内容如下:

categories {
includeCategories = defaultIncludeCategories()
excludeCategories = defaultExcludeCategories()
}

String defaultIncludeCategories() {
   def include = 'default'
   if( isAbcJob() ) {
      include = 'tier0'
   }
   logger.info "defaultIncludeCategories: $include"
   include
}

现在,正如您所看到的,我需要在配置文件中使用方法名称isAbcJob(),但此方法存在于build.gradle中,该文件调用conf.groovy文件进行属性管理。

底线是conf.groovy脚本将如何知道isAbcJob()方法在哪里?

请建议。

1 个答案:

答案 0 :(得分:0)

我发现Gradle论坛上提出的以下问题非常有用。并且,除非您通过任务访问它们,否则看起来无法访问其他gradle脚本的方法:

https://discuss.gradle.org/t/multiple-apply-froms-dont-seem-to-import-all-methods/2274/6