我一直在互联网上寻找如何创建功能并在build.gradle
内调用它们但没有成功的几分钟。由于我什么都没发现,我不确定我是否正在寻找正确的概念 - 关键词,或者甚至是否可能。
我有两个buildTypes
:
release {
}
debug {
}
我想在这两个内部调用snippet()
而不重复它,或者换句话说,创建一个函数:
def propsFile = rootProject.file('properties')
def M_PROP = "mProp"
if (propsFile.exists()) {
//Math
}
生成如下内容:
buildTypes {
release {
snippet()
}
}
debug {
snippet()
}
}
是可能的,我怎么能这样做?
答案 0 :(得分:1)
也许你想要
buildTypes {
[release, debug].each { buildType ->
if (foo) {
buildType.doStuff()
}
}
}
或者
ext.snippet = { buildType ->
if (foo) {
buildType.doStuff()
}
}
buildTypes {
snippet(release)
snippet(debug)
}
注意:groovy中还有with { ... }方法,所以
buildType.doStuff1()
buildType.doStuff2()
buildType.doStuff3()
可以写成
buildType.with {
doStuff1()
doStuff2()
doStuff3()
}