在多个Gradle脚本中重用def定义

时间:2015-08-10 13:49:08

标签: android-studio gradle

在我的Android Studio项目中有两个模块。每个模块都有自己的build.gradle文件。在这两个脚本中都需要一个自己编写的groovy函数getBuildNrAsString()。现在我想将此函数定义保存在单独的文件中,并在两个模块脚本中使用它。如何才能做到这一点?来自一个build.gradle脚本的以下代码段不起作用:

apply from: 'global.gradle'

使用Android Studio 1.3和gradle 1.2.3时,将抛出此错误消息:

  

未找到Gradle DSL方法:'getBuildNrAsString()'

如何将其他文件中的定义包含到build.gradle中?

1 个答案:

答案 0 :(得分:1)

您可以在不同的gradle脚本之间交换方法,必须将方法定义为闭包:

<强> lol.gradle

project.ext.aMethod = {
    println it
}

<强>的build.gradle

apply from: 'lol.gradle'

aMethod(2)