Android -- 每日一问:如何理解 Gradle?Gradle 在 Android 的构建过程中有什么作用?

06.jpg

一、什么是 Gradle ?

  • 一个像 Ant 一样的非常灵活的通用构建工具
  • 一种可切换的, 像 maven 一样的基于合约构建的框架
  • 支持强大的多工程构建
  • 支持强大的依赖管理(基于 ApacheIvy )
  • 支持已有的 maven 和 ivy 仓库
  • 支持传递性依赖管理, 而不需要远程仓库或者 pom.xml 或者 ivy 配置文件
  • 优先支持 Ant 式的任务和构建
  • 基于 groovy 的构建脚本
  • 有丰富的领域模型来描述你的构建

二、Gradle 的优点

  • 灵活性
  • 完全控制
  • 目标链
  • 依赖管理
  • 约定优于配置
  • 多模块项目
  • 插件扩展

三、如何学习 Gradle ?

  • 学习 Groovy(http://docs.groovy-lang.org/)
  • 学习 Gradle DSL(https://docs.gradle.org/current/javadoc/org/gradle/api/Project.html)
  • 学习 Android DSL和Task(http://google.github.io/android-gradle-dsl/current/index.html)

四、Gradle 脚本的执行时序

Gradle脚本的执行分为三个过程:

  • 初始化:分析有哪些module将要被构建,为每个module创建对应的 project实例。这个时候settings.gradle文件会被解析。

  • 配置:处理所有的模块的 build 脚本,处理依赖,属性等。这个时候每个模块的build.gradle文件会被解析并配置,这个时候会构建整个task的链表(这里的链表仅仅指存在依赖关系的task的集合,不是数据结构的链表)。

  • 执行:根据task链表来执行某一个特定的task,这个task所依赖的其他task都将会被提前执行。

你的朋友是不是也在准备面试呢?你可以“请朋友读”,把今天的题目分享给好友,或许你能帮到他。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Kevin-Dev

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值