美文网首页
Gradle 自我学习一 Gradle介绍

Gradle 自我学习一 Gradle介绍

作者: 程序员阿兵 | 来源:发表于2021-03-29 17:38 被阅读0次

1. 概述

Android项目的构建过程是由Gradle插件完成的,Gradle 插件是在Gradle框架的基础上实现的,Gradle框架是使用Groovy语言实现的。因此学习一下Groovy语言的一些常用语法是有必要的。

2. Groovy语法

Groovy语言对Java语言的进行了拓展,它提供了更简单、更灵活的语法,可以在运行时动态地进行类型检查;因此Java语言语法都适用于Groovy语言。

3.Gradle优势:

  • 1.一款最新的,功能最强大的构建工具,用它逼格更高
  • 2.使用程序代替传统的XML配置,项目构建更灵活
  • 3.丰富的第三方插件,让你随心所欲使用
  • 4.Maven、Ant能做的,Gradle都能做,但是Gradle能做的,Maven、Ant不一定能做。

Groovy介绍:

  • 1.一种基于JVM的敏捷开发语言
  • 2.结合了Python、Ruby和Smalltalk的许多强大的特性
  • 3.Groovy可以与Java完美结合,而且可以使用Java所有的库

配置Gradle

下载Groovy sdk: - Groovy Sdk
解压下载好的 Groovy sdk 找到对应bin 目录
命令行输入

vim ~/.bash_profile

导入

export PATH=$PATH:/Users/panzhang/Downloads/groovysdk/groovy-2.5.5/bin

Gradle 介绍

Gradle中的所有内容都基于两个基本概念:project和task

  • Project
    这个接口是build file与Gradle交互的主要API。 通过Project接口可以访问所有Gradle的功能。
image.png
  • Task

一个Project本质上是Task对象的集合。 每个Task都执行一些基本的工作,比如编译类,运行单元测试,或者压缩WAR文件。 可以使用TaskContainer上的某个create()方法(如TaskContainer.create(java.lang.String))将任务添加到Project中,可以使用TaskContainer上的某个查找方法(如TaskCollection.getByName(java.lang.String))查找现有Task。

build的生命周期

在Gradle中,你可以定义task和task之间的依赖关系。 Gradle保证这些task按照它们的依赖关系执行,并且每个task只执行一次,这些task形成有向无环图。 Gradle在执行任何任务之前完成了对完整的依赖关系图的构建,这是Gradle的核心,使许多事情成为可能,否则将是不可能的。

Gradle build包含三个的阶段:

    1. Initialization
      Gradle支持单个和多个Project的build。 在初始化阶段,Gradle确定哪些Project将参与build,并为每个Project创建一个Project实例。
      除了build script文件外,Gradle还定义了一个settings文件,settings文件在初始化阶段执行。 多Project buiid必须在多Project层次结构的根Project中具有settings.gradle文件。 这是必需的,因为settings文件定义了哪些Project正在参与多Project构建。 对于单Project build,settings文件是可选的。
      对于build script,属性访问和方法调用被委托给一个Project对象。 同样,settings文件中的属性访问和方法调用被委托给settings对象。
    1. Configuration
      在这个阶段,通过Project对应的构建脚本(比如Android项目的build.gradle文件)的执行来配置该Project对象,Task形成的有向无环图就是在这个阶段被创建。
    1. Execution
      首先确定在配置阶段创建和配置的Task的子集,以便执行, 该子集由传递给gradle命令的Task名称和参数和当前目录确定。 Gradle然后执行集合中的Task。

相关文章

网友评论

      本文标题:Gradle 自我学习一 Gradle介绍

      本文链接:https://www.haomeiwen.com/subject/iygvhltx.html