Gradle对我来说有点困惑,对任何新的Android开发人员来说也是如此。谁能解释一下Android Studio中的Gradle是什么,它的目的是什么?为什么Android Studio中包含它?


当前回答

Gradle是一个先进的构建系统,也是一个先进的构建工具包,允许通过插件创建自定义构建逻辑!

优点:

DSL——特定于领域的语言,基于Groovy DAG -有向无环图 增量构建 可扩展域模型 Gradle总是最新的 在任务执行之前,Gradle会对任务的输入和输出进行快照。 如果快照已经更改或不存在,Gradle将会更改 重新执行此任务。

清单条目

通过DSL可以配置以下内容 清单条目:

构建变体

默认情况下,Android插件会自动将项目设置为 构建应用程序的调试版本和发布版本。

依赖关系

本地相关性:

如果您的本地文件系统中有二进制档案,则该模块 依赖的,例如JAR文件,您可以在 该模块的构建文件。

远程的依赖关系:

首先必须将存储库添加到列表中,然后 依赖关系必须以Maven或Ivy声明其依赖关系的方式声明 工件。

其他回答

简单来说,Gradle是Android Studio为了实现两个重要过程而提供的工具:

构建我们的项目 将AndroidManifest.xml、res文件夹和二进制代码打包到一个名为APK的特殊格式压缩文件中

Gradle是一个自动化的构建工具包,可以集成到许多不同的环境中,不仅仅是Android项目。

下面是你可以用Gradle做的一些事情。

新建项目所需的最小配置,因为Gradle有Android Studio项目的默认配置。 依赖声明。您可以声明托管在本地或远程服务器上的依赖JAR文件或库文件。 Gradle自动从项目的源代码生成一个测试目录和一个测试APK文件。 如果您添加了所有必要的信息,如keyPassword和keyAlias,到您的Gradle构建文件中,您可以使用Gradle生成签名APK文件。 Gradle可以用不同的包生成多个APK文件,并从单个模块构建配置。

Gradle就像一个make版本,它把功能放在可用性之前,这就是为什么你和433k读者甚至不知道它是一个构建系统。

作者@Brian Gardner:

Gradle是一个用于编程项目的广泛的构建工具和依赖管理器。它有一种基于Groovy的领域特定语言。Gradle还为多种类型的项目提供了基于约定的构建支持,包括Java、Android和Scala。

Gradle的特点:

依赖关系管理 从Gradle中使用Ant Gradle插件 Java插件 Android插件 多项目构建

Gradle是一个运行在Android Studio上的构建系统。

例如,在其他语言中:

Java的Ant和Maven 红宝石的耙子 A-A-P of C .NET的NAnt 在Linux中制作