ChatGPT解决这个技术问题 Extra ChatGPT

Android Studio 中的 Gradle 是什么?

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

请参阅gradle.org
要回答为什么您需要 Gradle 等构建工具,请查看 Jeff Atwood 的this post
当有人在这里问一个问题时,是的,谷歌确实有很多关于它的链接,他们真正要求的是有人用简单的语言回答问题并将其放在上下文中,例如我们为什么需要它,谁最会使用它,我们是否需要知道它才能在 Android Studio 中构建 Android 应用程序等。因为您在 Google 上找到的关于它的大多数链接都在“技术演讲”中,对于初学者来说,这很令人困惑。
@NoniA。正是我的想法。我还是有点迷茫,gradle只是编译我写的代码的后台进程吗?此外,在查看了许多其他答案之后,他们提到了依赖关系。那些是什么?非常感谢!
Gradle 是 Android 开发人员最烦人的部分。当它要求您将项目升级到最新版本的 gradle 时,请三思而后行。还要确保你有一个备份。根据我的经验,几乎每次升级到新版本时,都会导致数小时的网络搜索试图找出它破坏我的项目的原因。不好玩!

P
Peter Mortensen

简答

Gradle 是一个构建系统。

长答案

在 Android Studio 之前,您将 Eclipse 用于开发目的,而且很可能,您不知道如何在没有 Eclipse 的情况下构建您的 Android APK

您可以在命令行上执行此操作,但您必须了解每个工具(dxAAPT)在 SDK 中的作用。 Eclipse 通过为我们提供自己的构建系统,将我们从这些低级但重要的基本细节中拯救出来。

现在,您有没有想过为什么 res 文件夹与您的 src 文件夹位于同一目录中?

这是构建系统进入画面的地方。构建系统自动获取所有源文件(.java.xml),然后应用适当的工具(例如,获取 .java 类文件并将它们转换为 .dex 文件),并将所有这些文件归为一个压缩文件 - 我们心爱的 APK。

此构建系统使用一些约定:一个示例是指定包含源文件(在 Eclipse 中为 \src 文件夹)或资源文件(在 Eclipse 中为 \res 文件夹)的目录。

现在,为了自动化所有这些任务,必须有一个脚本;您可以使用 Linux 中的 shell 脚本或 Windows 中的批处理文件语法编写自己的构建系统。知道了?

Gradle 是另一个构建系统,它采用了其他构建系统的最佳功能并将它们组合成一个。它是基于他们的缺点而改进的。它是一个基于 JVM 的构建系统。这意味着您可以使用 Android Studio 使用的 Java 编写自己的脚本。

Gradle 的一个很酷的地方是它是一个基于插件的系统。这意味着,如果您有自己的编程语言,并且希望自动执行从源代码构建某些包(如 Java 的 JAR 文件的输出)的任务,那么您可以用 Java 或 Groovy(或 { 3},见 here),并将其分发给世界其他地方。

谷歌为什么使用它?

Google 看到了市场上最先进的构建系统之一,并意识到您可以编写自己的脚本,几乎没有学习曲线,无需学习 Groovy 或任何其他新语言。所以他们为 Gradle 编写了 Android 插件。

您必须在项目中看到 build.gradle 个文件。在那里你可以编写脚本来自动化你的任务。您在这些文件中看到的代码是 Groovy 代码。如果你写 System.out.println("Hello Gradle!"); 那么它将在你的控制台上打印。

你可以在构建脚本中做什么?

一个简单的例子是,在实际构建过程发生之前,您必须将一些文件从一个目录复制到另一个目录。 Gradle 构建脚本可以做到这一点。


我不得不说,在将 AndroidStudio 项目从一个位置转移到另一个位置时,Gradle 给了我一些问题。版本不匹配,缺少模块,等等……这让我很难受。我最终重新创建了项目骨架并将旧项目中的代码部分剪切/粘贴到新项目中。这是在 Windows 下的源和目标。我现在要把它移到一个基于 Linux 的实验室下。
我不明白为什么 gradle 尝试为我制作的每个项目甚至每次我想编译的项目都连接到 Internet
我认为 IntelliJ 已经知道如何构建 Android 项目,而无需其他构建系统。
gradle 相对于 pre Android studio 构建系统的另一个关键优势是依赖管理。以前要在项目中使用 Android 库,必须下载源代码,将其添加到项目中并与项目一起编译。相反,使用 gradle 可以在 build.gradle 中添加一行,然后 gradle 将从公共存储库下载已编译的库并将其添加到您的项目中。一些示例:blog.teamtreehouse.com/android-libraries-use-every-project 这也适用于标准 Java jar 文件,而不是将它们放在 lib 目录中。
Gradle 是一个糟糕的构建系统。在使用 Android Studio 时,我希望它负责构建。我不明白为什么添加一些类会强制 Gradle 在它有用之前进行同步。相比之下,使用 Visual Studio 非常棒(甚至是 X-Code)——不需要糟糕的额外功能。 IDE 构建项目和解决方案,无需在随机文件中修改 Android 构建过程有时需要的设置或通过更新旧项目。 Gradle 是 Android 体验中最糟糕的部分。
P
Peter Mortensen

它是 Google 想要用于 Android 的新构建工具。之所以使用它,是因为它比 Ant 更具可扩展性和实用性。它旨在增强开发人员的体验。

您可以在此处查看来自 Android 开发团队的 Xavier Ducrohet 的演讲,网址为 Google I/O

Xavier 和 Tor Norbye 也发表了关于 Android Studio 的另一场演讲,during Google I/O here


我认为 IntelliJ 已经知道如何构建 Android 项目,而无需其他构建系统。
那么gradle只是编译我写的代码的后台进程吗?此外,在查看了许多其他答案之后,他们提到了依赖关系。那些是什么?非常感谢丹尼尔!
@user5562706 它不编译代码,但它负责调用编译代码的可执行文件。编译完代码后,它可以运行另一个任务来打包它,另一个任务将它复制到您选择的目录,然后可能另一个任务将它上传到某个地方的服务器......这是 Gradle 或任何构建的那些任务系统,会的。
k
kenju

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

例如在其他语言中:

Java 的 Ant 和 Maven

红宝石耙

C的AAP

.NET 的 NAnt

在 Linux 中制作


当你说 Gradlemake 相似时,我才明白它的概念
PHP的PHING
我发现了解未知工具的功能以及它在管道中的位置的最快方法之一是在 Google 中输入工具的名称和“vs”。结果通常会显示“X vs Y”,其中 Y 是您可能更熟悉的其他工具。
用于 JavaScript 的 webpack
Linux 不是一种编程语言。它主要用于C。也许是“Linux 上的 C 语言”
P
Peter Mortensen

以下是对 Gradle 是什么以及如何在 Android Studio 中使用它的详细说明。

探索 Gradle 文件

每当您在 Android Studio 中创建项目时,构建系统都会自动生成所有必要的 Gradle 构建文件。

Gradle 构建文件

Gradle 构建文件使用特定领域的语言或 DSL 来定义自定义构建逻辑并与 Android 插件的 Android 特定元素进行交互。 Android Studio 项目由一个或多个模块组成,这些模块是您可以独立构建、测试和调试的组件。每个模块都有自己的构建文件,因此每个 Android Studio 项目都包含两种 Gradle 构建文件。顶级构建文件:在这里您可以找到组成项目的所有模块共有的配置选项。模块级构建文件:每个模块都有自己的 Gradle 构建文件,其中包含特定于模块的构建设置。您将花费大部分时间编辑模块级构建文件,而不是项目的顶级构建文件。

要查看这些 build.gradle 文件,请打开 Android Studio 的项目面板(通过选择项目选项卡)并展开 Gradle Scripts 文件夹。 Gradle Scripts 文件夹中的前两项是项目级和模块级 Gradle 构建文件

顶级 Gradle 构建文件

每个 Android Studio 项目都包含一个顶级 Gradle 构建文件。此 build.gradle 文件是出现在 Gradle Scripts 文件夹中的第一个项目,并且明确标记为 Project。

大多数情况下,您不需要对此文件进行任何更改,但了解它的内容以及它在您的项目中扮演的角色仍然很有用。

模块级 Gradle 构建文件

除了项目级别的 Gradle 构建文件之外,每个模块都有自己的 Gradle 构建文件。下面是一个基本的模块级 Gradle 构建文件的注释版本。

其他 Gradle 文件

除了 build.gradle 文件之外,您的 Gradle Scripts 文件夹还包含一些其他 Gradle 文件。大多数情况下,您不必手动编辑这些文件,因为当您对项目进行任何相关更改时,它们会自动更新。但是,最好了解这些文件在您的项目中所扮演的角色。

gradle-wrapper.properties(Gradle 版本)

该文件允许其他人构建您的代码,即使他们的机器上没有安装 Gradle。该文件检查是否安装了正确版本的 Gradle,并在必要时下载必要的版本。

设置.gradle

该文件引用了构成您的项目的所有模块。

gradle.properties(项目属性)

此文件包含整个项目的配置信息。默认情况下它是空的,但是您可以通过将它们添加到此文件来将各种属性应用到您的项目中。

local.properties(SDK 位置)

该文件告诉 Android Gradle 插件在哪里可以找到您的 Android SDK 安装。

注意: local.properties 包含特定于 Android SDK 本地安装的信息。这意味着您不应将此文件置于源代码管理之下。

Suggested reading - Tutsplus Tutorial

我由此对Gradle有了一个清晰的认识。


请注意,不鼓励使用 link-only answers,因此答案应该是搜索解决方案的终点(与另一个参考文献的中途停留相比,它往往会随着时间的推移变得陈旧)。请考虑在此处添加独立的概要,并保留链接作为参考。
h
hichris123

Gradle 是一种构建程序源代码的构建工具。所以它是 Android Studio 的重要组成部分,需要在开始开发应用程序之前安装。

我们不必单独安装它,因为 Android Studio 会在我们创建第一个项目时为我们完成。


构建程序的源代码是什么意思?这不是开发人员的工作吗?
这个答案在措辞上是完全错误的。 Gradle 是与 Android Studio 捆绑在一起的打包工具,因此它负责构建 apk。源代码始终由编译器构建,仅此而已。
然而,从另一个问题来看,如果没有可靠的互联网连接,Gradle 将无法正常工作,这是否意味着我必须丢弃 Android Studio,直到该问题得到修复?
@committedandroider:开发人员的工作是编写源代码,而不是构建它。在系统开发中,我们使用“构建”一词来表示将编译的源代码打包成最终产品(包或可执行文件)的过程
@MestreLion 哈哈,当时我很困惑,因为人们使用“构建”来指代为他们的项目编写源代码——我构建了这个聊天服务器,这个应用程序是为了......
P
Peter Mortensen

定义:Gradle 可以被描述为一种结构化的构建机制,它为开发人员提供工具和灵活性来管理项目资源,以创建尺寸更小的构建,针对特定配置的某些设备的特定要求

基本配置

minimumSdk maximumSdk targettedSdk versionCode versionName

图书馆

我们可以根据需要添加 Android 库或任何其他第三方库。这很容易,之前是一项乏味的任务。如果该库不适合现有项目,则向开发人员显示一个日志,该人可以在其中找到适当的解决方案来更改项目,以便可以添加该库。这只是一条依赖线。

生成各种构建

将构建类型与构建风格相结合以获得各种构建变体

 ====================                         ====================
|     BuildTypes     |                       |   ProductFlavours  |
 --------------------  ====================== --------------------
|  Debug,Production  |      ||       ||      | Paid,Free,Demo,Mock|
 ====================       ||       ||       ==================== 
                            ||       ||
                            VV       VV
 =================================================================
|           DebugPaid, DebugFree, DebugDemo, DebugMock            |
|  ProductionPaid, ProductionFree, ProductionDemo, ProductionMock |
 =================================================================

缩小尺寸

Gradle 通过从集成库中删除未使用的资源和未使用的东西来帮助减少生成的构建的大小。

管理权限

我们可以根据需求在特定场景下添加特定权限,为特定构建指定特定权限。

为特定设备构建

我们可以为包含特定密度和特定 API 级别的特定设备管理生成构建。这有助于根据跨多种设备的需求在应用商店中部署产品。

很好的参考

Vogella Tutorials


C
Community

您可以在此处找到有关 Gradle 的所有信息:Gradle Plugin User Guide

新构建系统的目标 新构建系统的目标是: 轻松重用代码和资源 轻松创建应用程序的多个变体,用于多 apk 分发或不同风格的应用程序 使其变得简单配置、扩展和自定义构建过程 良好的 IDE 集成 为什么选择 Gradle? Gradle 是一个高级构建系统以及一个高级构建工具包,允许通过插件创建自定义构建逻辑。以下是它的一些特性让我们选择了 Gradle: 描述和操作构建逻辑的领域特定语言 (DSL) 构建文件基于 Groovy,允许通过 DSL 混合声明性元素并使用代码来操作 DSL 元素以提供自定义逻辑。通过 Maven 和/或 Ivy 的内置依赖管理。非常灵活。允许使用最佳实践,但不强迫自己的做事方式。插件可以公开自己的 DSL 和自己的 API 以供构建文件使用。良好的工具 API 允许 IDE 集成


关于“你需要的一切”:不,它缺少关于 DX 的信息(以及 D8 的相关信息)。
P
Peter Mortensen

Gradle 是一个 build system构建系统是旨在自动化程序编译过程的软件工具。构建系统有多种形式,用于各种软件构建任务。虽然他们的主要目标是有效地创建可执行文件。

另一个相关术语是构建自动化,它是自动创建软件构建的过程以及相关过程,包括:将计算机源代码编译为二进制代码、打包二进制代码和运行自动化测试。

其他语言的类似构建系统很少(参见完整列表 here):

Apache Ant 和 Apache Maven - Java sbt - 用于 Scala(Play 框架等) AAP - 基于 Python 的构建工具 Rake(Apache Builder) - 用于 Clojure 的 Ruby Leiningen


P
Peter Mortensen

冒着言辞的风险,我认为这背后是为什么 Android Studio / Gradle 体验如此糟糕的问题。

典型的 Clojure 经验:

下载 project.clj 中列出的依赖项的项目。

由于 Clojars 和 Maven,Leiningen 获得了依赖项。

项目编译。

典型的 Android Studio / Gradle 体验:

“导入我的 Eclipse 项目”。

好的,项目已导入。

Gradle 正在做它的事情……等等……等等……等等……Gradle 已经完成了。

编译...无法编译,因为我不知道 X 是什么/找不到 Y 库。

我不确定这完全是 Gradle 的错。但是“从 Eclipse 项目导入”似乎很不稳定。对于 Gradle 所谓的复杂性和构建系统的所有优点,Android Studio 似乎并没有很好地从 Eclipse 导入构建依赖项或构建过程。

它不会告诉您何时无法导入完整的依赖关系图。 Android Studio 没有提供有关如何解决问题的有用帮助或提示。它没有告诉您可以在哪里手动查看 Eclipse 文件夹。它不会告诉您似乎缺少哪个库。或者帮你搜索Maven等。

在 2016 年,像 Leiningen / Clojars、Node.js 的 npm、Python 的 pip 或 Debian apkg(我相信许多其他语言和系统的类似包管理器)都运行良好......缺少依赖项已成为过去。

安卓除外。 Android Studio 现在是唯一一个我似乎仍然会经历缺失依赖地狱的地方。

我倾向于说这是谷歌的错。当他们漫不经心地决定从 Eclipse 转移到 Android Studio / Gradle 时,他们打破了 Android 生态系统(以及数千个现有的 Android 项目 / 在线教程),而没有产生强大的转换过程。项目在 Eclipse 中工作的人并没有使他们适应 Android Studio(大概是因为这对他们来说很痛苦)。尝试在 Android Studio 中使用这些项目的人也遇到了同样的问题。

无论如何,如果 Gradle 是这个超级强大的构建系统,为什么我还要在 SDK 管理器中管理大量其他依赖项?为什么需要 NDK 的项目不能在其 Gradle 文件中指定这一点,以便在需要时自动安装和构建?为什么 NDK 很特别?同样适用于目标平台?为什么我要在 IDE 中明确地安装它们,而不是仅仅对照它们检查我的项目并在幕后为我整理好这一切?


我完全同意 Gradle 是一个糟糕的构建系统。正是这个组件使得 Android Studio 远不如 X-Code 或 Visual Studio。我意识到这些必须在幕后“构建”系统,但我并不真正需要了解/关心/修补他们的内部结构。另一方面,Gradle 似乎会随着 Android Studio 的每次更新而中断,即使只是添加一个类也会使系统陷入困境。没有其他 IDE 可以做到这一点。
P
Peter Mortensen

Gradle 是一个高级构建系统以及一个高级构建工具包,允许通过插件创建自定义构建逻辑!

优点:

DSL - 基于 Groovy 的领域特定语言

DAG - 有向无环图

增量构建

可扩展领域模型

Gradle 始终是最新的

在执行任务之前,Gradle 会对其任务的输入和输出进行快照。

如果快照已更改或不存在,Gradle 将重新执行此任务。

清单条目

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

构建变体

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

依赖项

本地依赖:

如果您的本地文件系统中有模块所依赖的二进制存档,例如 JAR 文件,您可以在该模块的构建文件中声明这些依赖项。

远程依赖:

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


P
Peter Mortensen

Gradle 之于 Groovy JVM 语言就像 Ant 之于 Java。基本上,它是 Groovy 的构建工具。与 Ant 不同,它基于完整的 Groovy 语言。例如,您可以在 Gradle 脚本中编写 Groovy 脚本代码来做某事,而不是依赖 domain-specific language

我不知道 IntelliJ IDEA 的具体集成,但想象一下您可以“扩展”Groovy,这样您就可以编写特定的“构建”语言原语,它们就成为 Groovy 语言的一部分。 (Groovy 的元编程本身就是一个完整的讨论。)IntelliJ 和 Google 可以使用 Gradle 来构建一种非常高级的构建语言,但是,它是一种基于可扩展的开放标准的语言。


它不是“Groovys 构建工具”——它是一个多用途的构建工具,它的 DSL 构建在 groovy 之上
P
Peter Mortensen

Gradle 是用于管理依赖项并允许您定义自定义构建逻辑的 Android 高级构建工具包。功能就像

自定义、配置和扩展构建过程。

使用同一个项目为您的应用创建具有不同功能的多个 APK 文件。

重用代码和资源。

Reference


P
Peter Mortensen

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

以下是您可以使用 Gradle 做的几件事。

新项目所需的配置最少,因为 Gradle 为您的 Android Studio 项目提供了默认配置。

依赖声明。您可以声明托管在本地或远程服务器上的依赖项 JAR 文件或库文件。

Gradle 会自动从您的项目源中生成一个测试目录和一个测试 APK 文件。

如果将所有必要的信息(例如 keyPassword 和 keyAlias)添加到 Gradle 构建文件中,则可以使用 Gradle 生成签名的 APK 文件。

Gradle 可以生成具有不同包的多个 APK 文件,并从单个模块构建配置。


P
Peter Mortensen

在 Android Studio 中,Gradle 是一个自定义构建工具,用于通过管理依赖项和提供自定义构建逻辑来构建 Android 包(APK 文件)。

APK 文件(Android 应用程序包)是一个特殊格式的 ZIP 文件,其中包含

字节码

资源(图像、UI、XML 等)

清单文件

使用 ADB(Android 调试桥)对 APK 文件进行签名并推送到设备并在其中执行。


P
Peter Mortensen

Gradle 是一个自定义的构建工具,用于构建 APK 文件。它也被称为应用程序包工具包。


“构建工具自定义”是什么意思?请通过 editing (changing) your answer 回复,而不是在评论中(没有“编辑:”、“更新:”或类似内容 - 答案应该看起来好像是今天写的)。
D
Dale

Gradle 使构建复杂的 Android 项目成为可能,这些项目涉及来自多个源、项目、库等的成千上万行代码。它可以根据大量配置规范有条件地生成多个优化的 APK——如果你有兴趣,其他答案提供了 Gradle 这方面的更多细节。

但是,如果您是 Android 开发新手,那么在 99% 的情况下,Gradle 会阻止您的项目构建。这是一个高深莫测的复杂系统,它有效地混淆了 Android 构建过程,并且基本上使没有经验的开发人员无法使用它,也就是说,为了构建一个简单的入门级 Android 应用程序,毫无戒心的新手可能需要学习和理解他们没有的许多东西'讨价还价,例如:

Android APK 结构和生态系统

安卓工作室

Java 类路径和依赖项

时髦的

Gradle 构建脚本

许多其他复杂而有趣的技术

所有这些对于 Android 开发人员来说都很有趣和有用,但它们远非易事,并且存在巨大的进入障碍。我怀疑激发 OP 提出这个问题的原因是新手开发人员在花了太长时间试图构建一个简单的应用程序并不断被 Gradle 挫败后,不可避免地会感到沮丧。大量可用于所有这些技术的高度技术性文档反常地加剧了这个问题。另外对于大量的开发需求,Gradle 是大材小用。

另一种方法是编写一个 shell 脚本,通过自动化 Android SDK 中可用的工具来构建您的项目。这种方法的优点很多,对于初学者来说,它可能是研究和了解构建过程和 Android 生态系统的最佳方式,它允许您完全控制应用程序的构建方式。然而,这种方法更适合于无法挽回的技术负责人,而不是尝试 android 的没有经验的菜鸟。

它的缺席(如果有这样的事情,请通知我)是一个入门级的轻量级 IDE,它具有减少的功能集,同时简化了构建过程,同时又不会掩盖它(所以不是 Netbeans 或 Eclipse)它可能仍然使用 Gradle(Ant 出了什么问题)。如果您决定采用这种方式,它应该可以轻松生成符合一些常见配置的 APK,并使用可以演变为完整 Android Studio 项目的项目结构。


P
Peter Mortensen

@布莱恩·加德纳:

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

Gradle的特点:

使用 Gradle Gradle 插件中的 Ant 进行依赖管理 Java 插件 Android 插件 多项目构建


“布赖恩加德纳”指的是什么?
S
S.Voulgaris

简单来说,Gradle 是 Android Studio 提供的一个工具,用于实现两个重要的流程:

构建我们的项目 将 AndroidManifest.xml、res 文件夹和二进制代码打包成一个特殊格式的 zip 文件,称为 APK


R
Raviraj

Gradle 是一个易于定制的构建系统,支持按约定模型构建。 Gradle 是用 Java 编写的,但构建语言是 Groovy DSL(领域规范语言)。 Gradle 不仅支持多项目构建,还支持 Ivy 和 Maven 等依赖项。 Gradle 还可以支持构建非 Java 项目。

https://medium.com/@ravirajdesai501/what-is-gradle-442458dd7ec1


c
c z

Gradle 就像 make 的一个版本,将功能置于可用性之上,这就是为什么您和 433k 读者甚至无法确定它是一个构建系统的原因。


t
thepunitsingh

Android Studio 构建系统基于 Gradle,Android Gradle 插件添加了一些特定于构建 Android 应用程序的功能。尽管 Android 插件通常与 Android Studio 同步更新,但该插件(以及 Gradle 系统的其余部分)可以独立于 Android Studio 运行并单独更新。

更多详情您可以参考:

https://developer.android.com/studio/releases/gradle-plugin?gclid=Cj0KCQiAlZH_BRCgARIsAAZHSBndmJC_myjKnuCBZbe7u9nyzMjbFGES2SVvedq4nxyqdqJnqq0xxlAaAvGMEALw_wcB&gclsrc=aw.ds https://gradle.org/


H
Himesh Perera

简短而简单的答案,

Gradle 是一个构建系统,负责将代码编译、测试、部署和转换为 . dex 文件,从而在设备上运行应用程序。由于 Android Studio 预装了 Gradle 系统,因此无需安装额外的运行时软件来构建我们的项目。


y
yoAlex5

Gradle 和安卓

Gradle 是一个 open-source 构建自动化工具。 Gradle 支持 Android 的 Java 和 Kotlin

source files -> build tools -> output file(.apk, .jar, .aar ...)

您可以使用更底层的构建工具,例如 javacDX, D8[About]aapt[About]、签名工具...

Gradle 是更高级的工具,可以在后台完成所有这些工作。它具有以下优点:

依赖管理器[关于]

在 Groovy 或 Kotlin 上使用域特定语言 (DSL) 来公开当前设置或自定义/扩展构建过程。例如,您可以编写一些任务并通过任何项目共享它们

[gradle vs gradlew]


P
Peter Mortensen

Gradle = Groovy + Cradle

参考:Hans Dockter forum comment

当它可以在 Android Studio 中被称为“构建”或其他东西时,这种混淆是有点不必要的。

我们喜欢在开发社区中为自己制造困难。


P
Peter Mortensen

搜索结果

网络精选片段

安卓 |建造。摇篮。

Gradle 是一个构建系统(开源),用于自动化构建、测试、部署等。例如,将一些文件从一个目录复制到另一个目录的简单任务可以通过 Gradle 构建脚本在实际的构建过程发生。


P
Peter Mortensen

https://www.slideshare.net/AshifShaikh3/graddle

Gradle 正在帮助我们管理 Android 的生态系统,例如库、代码版本、版本名称和应用程序 ID。为了找到一个应用程序,Gradle 正在添加依赖项 1. 远程基础,2. 本地基础。

https://i.stack.imgur.com/DVIyc.png


“摇篮”??不!!!!它下面甚至还有红色的波浪线。
这仍然接近于难以理解。你能修好它吗?您可以edit(更改)您的答案。
是的,我会的,我正在努力学习并存档,谢谢您的反馈,先生@PeterMortensen