需要Groovy知识来理解Gradle?

所以,我一直在试图避免构建工具,但现在开始使用Gradle一段时间了。 我可以将它用于简单的事情,比如让它下载依赖关系,就像它的意图一样,但是我看到有人用它来做真正高级的工作人员,比如管理具有不同模块的大型项目,本地依赖项,在构建时发布到Github,等等

当我试图做更复杂的事情时,我觉得仍然需要复制 – 粘贴,因为即使找到一些文档来阅读,我仍然不确定像{,},:,(,)这样的语言语法是意味着被使用。

所以,我的问题是:学习Groovy以更好地理解Gradle是否有意义? 阅读文档应该足够了吗? 我什至不问,因为我不会对Groovy感兴趣,我只是想知道人们是如何习惯使用Gradle,以及是否有意义地使用Gradle来进行更高级的任务,然后从存储库获取依赖关系。

Gradle使用当前基于Groovy的DSL(域特定语言)。 这意味着,你应该可以通过学习DSL来扩展Gradle。 当然,它继承了Groovy的一些语法(如圆括号等),但是离正常的Groovy代码很远。

如果你想开始编写自己的闭包,任务和插件,那么你需要一些Groovy的技能,是的。 Groovy in Action第2版是一本很好的书,如果你是一个Java开发人员,那么看一下制作Java Groovy 。

说到这一点,请记住, Gradle公司宣布他们将支持Kotlin作为DSL的基础 。 这意味着您将能够在Kotlin Groovy中编写构建的“自定义”部分。 所以,请关注Kotlin,这是最好的方式 – Kotlin in Action 。