Gradle与Groovy

每个build.gradle文件的内容,基本上是Groovy脚本,比如:
apply plugin: 'java'
其实,它是Groovy脚本,即:
apply([plugin: 'java'])
apply属于方法名,[plugin: 'java'] 为map结构参数,得益于Groovy语言的简洁,我们可以简写为:
apply [plugin: 'java'] ,和 apply plugin: 'java' 。
当然,build.gradle中的脚本使用了最简化的Groovy语法。
聪明的你肯定想问,apply属于方法名,那属于哪个对象的方法,嗯,Gradle api帮我做了一层Groovy 语法糖,把对象project省去了,所以project.apply([plugin: 'java'])就大大简化了书写的形式。其实Gradle还创建了另一个对象task。请看下图:
intellij idea 工具下build.gradle文件中:
project对象的apply方法,红色方框内是我们上面所使用的方法。
project对象的task方法,红色方框内的使用方式,前面《Gradle hello world 脚本》一节也介绍了,如:
task helloWorld {
doLast {
println 'Hello World - This is my first script'
}
}
说白了,我们在build.gradle文件中一直在写脚本,而不像maven一样,配置,配置,都是配置。
《gradle-3.4版本》

Gradle与Groovy相关推荐

  1. gradle的groovy语法案例详解

    groovy的语法与python的语法有些类似 1.groovy的三个特性 1)不需要分号 2)不需要写get,set方法,对象里面默认会有get与set方法 3)方法的最后一个值默认为返回值,不需要 ...

  2. gradle groovy_Eclipse Mars:具有Gradle,Groovy和GSP支持的Grails 3.1

    gradle groovy 如果您想像使用Groovy / Grails Tool Suite或以前的Eclipse版本一样容易地使用Eclipse Mars(4.5)开发Grails 3项目,该怎么 ...

  3. gradle和groovy

    我是学习一篇CSDN博客,然后总结的这篇笔记,直接看这篇笔记可能会云里雾里,所以请先参考原文:http://blog.csdn.net/innost/article/details/48228651 ...

  4. Gradle 从 Groovy 到 KTS 迁移

    本文主要记录Groovy版本和kotlin版本的Gradle 相关设置.以便备忘或以后迁移参考. settings.gradle settings.gradle: pluginManagement { ...

  5. gradle风格的groovy代码

    我们先来看一段gradle中的代码: buildscript {repositories {jcenter()}dependencies {classpath 'com.android.tools.b ...

  6. 【Groovy】Gradle 构建工具 ( 自动下载并配置构建环境 | 提供 API 扩展与开发工具集成 | 内置 Maven 和 Ivy 依赖管理 | 使用 Groovy 编写构建脚本 )

    文章目录 一.Gradle 自动下载并配置构建环境 二.Gradle 提供 API 扩展与开发工具集成 三.Gradle 内置 Maven 和 Ivy 依赖管理 四.Gradle 使用 Groovy ...

  7. Android Gradle(三)Groovy快速入门指南

    本文首发于微信公众号「刘望舒」 原文链接:Groovy快速入门看这篇就够了 前言 在前面我们学习了为什么现在要用Gradle?和Gradle入门前奏两篇文章,对Gradle也有了大概的了解,这篇文章我 ...

  8. Gradle 之语言基础 Groovy

    最近在学习 Android 中 Gradle 相关的知识,如果想学好 Gradle,必要的 Groovy 基础是不可少的.Groovy 语言的知识也是非常多的,如果只是想在 Android Gradl ...

  9. gradle groovy_适用于Java开发人员的Groovy吗? 认识Gradle,Grails和Spock

    gradle groovy Java开发人员最感兴趣的Groovy用例有哪些? 尽管已经有一段时间了,但似乎只有Groovy最近才开始使用Groove. 对于某些人来说,它基本上只是另一种深奥的JVM ...

最新文章

  1. 卷积、傅立叶变换、拉普拉斯变换、Z变换
  2. 四种方法解决最大连续子序列和问题
  3. word2007-2010排版中解决段后插入分页符 新页首行空行问题
  4. 《系统集成项目管理工程师》必背100个知识点-80项目变更管理在软件项目管理中的主要活动内容...
  5. FL-EM7688 Smart评估板openwrt开发环境搭建(linux固件部分)
  6. ios 高德获取定位_解决ios11不支持高德地图API定位功能的方法
  7. 强化学习读书笔记 - 06~07 - 时序差分学习(Temporal-Difference Learning)
  8. 【ubuntu】出现device not managed连接不上网络
  9. C++之string的底层真的是用char数组来实现的么?
  10. python+neo4j ,Dota2自走棋,小型知识图谱构建
  11. ARM基础学习-寄存器寻址方式和指令
  12. 如何让我们的软件跳过360和金山毒霸的“随意拦截”?
  13. [Swift]地图导航
  14. expdp和impdp备份数据库(数据泵备份)
  15. iOS 【模仿App 获取app素材】
  16. 修改 nz-form-item 的样式
  17. 考研这么累,是什么让你坚持下来的?
  18. cyclone v QSPI烧写问题(not able to map flash id)
  19. 和GGA的第一次亲密接触
  20. Appium+Java模拟手机按键

热门文章

  1. H3C 三层交换实验
  2. java 获取手机联系人_Android 读取手机联系人、拨号、发送短信及长按菜单的操作...
  3. 踩坑~CSS~8 位16 进制颜色
  4. 伯颜自留后路,项羽破釜沉舟。谁又是对的呢
  5. matlab矩阵乘法结果出错,为啥矩阵乘法显示矩阵乘法维度不正确?是什么原因?...
  6. 【甘道夫】Win7x64环境下编译Apache Hadoop2.2.0的Eclipse小工具
  7. 视频和音频文件手电筒可与UV-LED手电筒,电筒
  8. Python读取TMRR3B43 月降雨量数据Hdf文件
  9. (菜鸟要飞系列)五,基于Asp.Net MVC5的后台管理系统(添加数据表的分页功能)...
  10. 电子邮箱地址是什么?电子邮箱地址怎么写?电子邮箱地址在哪里找?