android gradle 插件和 gradle 的区别

Posted

技术标签:

【中文标题】android gradle 插件和 gradle 的区别【英文标题】:difference between android gradle plugin and gradle 【发布时间】:2018-08-15 19:51:41 【问题描述】:
android Studio 3.2 Canary 5
Build #AI-173.4630681, built on March 3, 2018
JRE: 1.8.0_152-release-1136-b01 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.15.4-300.fc27.x86_64

我刚刚开始了一个新项目,当我同步时,我得到了这个对话框。

我只是想知道 Android Gradle 项目和 Gradle 有什么区别。

How would I upgrade to Gradle to version 4.5?
What is the purpose of both of these?

在此先感谢

【问题讨论】:

【参考方案1】:

Gradle 是构建系统。

您可以将它与a lot of plugins 一起使用。其中之一是Android Gradle plugin。 它用于为构建和测试 Android 应用程序提供特定的流程和可配置设置。

【讨论】:

赞成消除一个常见的误解:Android Gradle 插件是一个允许您构建 Android 应用程序的 Gradle 插件,而不是一个允许您使用 Gradle 的 Android Studio 插件。【参考方案2】:

即使您为 java 项目和 android 项目编写了相同的 java 源代码,它们的构建和执行方式也完全不同。 Java 项目源代码编译为字节码(.class 文件)并在 JVM(Java 虚拟机)上运行。 Android 项目源代码编译为 Dalvik 字节码(.dex 文件)并在 DVM(Dalvik 虚拟机)上运行。而且这两个虚拟机执行命令的方式也不同。

在构建标准 Java 应用程序所没有的应用程序时,Android 项目有许多特定于平台的步骤。 (如打包为 apk、自动签名、项目风格管理、最低 API 级别)通过添加 Android Gradle 插件,这些差异可以更轻松地以更精细的方式应用。 (因此,构建 Android 应用程序对每个人来说都变得更容易了)。

【讨论】:

这个答案没有谈到“android gradle plugin 和 gradle 的区别”。 @GrokkingDroid 但这对我来说是最好的解释之一? 它实际上并没有回答这个问题,但它是很好的解释。【参考方案3】:

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

来自文档

https://developer.android.com/studio/releases/gradle-plugin.html

【讨论】:

只是为了更完整:在 Doc(above link) 中有一个表格指定每个版本的 Android Gradle 插件需要哪个版本的 Gradle。

以上是关于android gradle 插件和 gradle 的区别的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio gradle插件版本和gradle版本对应关系

如何在android studio中查看当前使用的gradle版本和gradle插件版本

如何在android studio中查看当前使用的gradle版本和gradle插件版本

如何在android studio中查看当前使用的gradle版本和gradle插件版本

如何在android studio中查看当前使用的gradle版本和gradle插件版本

Android Studio gradle插件版本和gradle版本对应