首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gradle add function to subproject (最佳实践)

Gradle add function to subproject (最佳实践)
EN

Stack Overflow用户
提问于 2016-09-01 17:44:42
回答 1查看 392关注 0票数 1

这是一个包含多个部分的问题。

Gradle似乎有两种定义函数的方法

类型一:

代码语言:javascript
复制
def func1 = { param -> ...}

类型2

代码语言:javascript
复制
def func2 (OptionalType param){...}

我更喜欢使用Type2,这不仅是因为我不知道如何为func1定义参数的类型(问题第1部分是如何为函数类型1参数设置类型),还因为它读起来更好。

但我发现我能做到

代码语言:javascript
复制
subprojects { ext.func1 = func1 }

代码语言:javascript
复制
subprojects { ext.func2 = func2 }

似乎不起作用,因为我更喜欢使用函数类型2,我想知道如何为子项目提供它,我相信这肯定是可能的,但我找不到正确的语法。(问题二)

我希望你们能帮助我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-01 17:49:41

您的func1不是一个函数,但是您定义了一个闭包,并将该闭包分配给一个变量。在Groovy ( Gradle的基础)中,您可以调用具有闭包的变量,就像它是一个函数一样,但实际上它不是。

因此,要么使用类型1(也可以在同一位置使用可选类型,但不需要这样做,因为def func1 = { OptionalType param -> ...}是动态类型的。

或者使用类型2定义函数,然后创建一个调用类型2函数的类型1变量。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39268106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档