2015-07-20 56 views
0

我有一个名为other.gradle的另一个build.gradle文件中定义的闭包。以下是内容:build.gradle如何从另一个文件中应用关闭

Closure callback = { 

    productFlavors { 
     ... 
     devel { 
      ... 
     } 

     prod { 
      ... 
     } 
    } 
} 

现在,在我的build.gradle文件我想打电话给这个封闭是这样的:

apply from: 'other.gradle' 
productFlavors(callback()); 

,但我不断收到该回调()不能被发现的错误。这两个文件都在同一个目录中。我的问题是我如何获得build.gradle文件来查看'other.gradle'文件中的回调关闭。

回答

1

应以下列方式进行:

other.gradle

project.ext.callback = { c -> 
    println(c) 
} 

的build.gradle

apply from: 'other.gradle' 

callback('a') 

或者在相同的情况下callback应通过被称为project.instance,例如project.callback('a')

相关问题