Gradle - 简介介绍 首页GradleGradle - 简介

Gradle Tutorial

基于 Apache Maven 和 Apache Ant Gradle教程提供了Gradle工具的基本和高级概念。我们的Gradle教程是为初学者和专业人士开发的。

Gradle是基于 Groovy和Kotlin 的高级通用构建管理工具。这是一个构建自动化工具,该工具是开源的,基于 Apache Maven 和 Apache Ant 。它是为多个项目开发的,可能会很大。它已开发用于多种语言和平台上的自动化,包括 Java Scala Android C/C ++ Groovy

什么是Gradle?

Gradle 是基于 Apache Maven Apache Ant 概念的开源构建自动化工具。它能够构建几乎所有类型的软件。它是为多项目构建而设计的,该项目可能很大。它引入了基于Java和Groovy的DSL(域特定语言),而不是XML来声明项目配置,它使用DAG(有向无环图)定义执行任务顺序。

Gradle提供了一种弹性模型,可以通过编译和打包针对Web和移动应用程序的代码来帮助开发生命周期。它为在不同平台上的buildingtestingdeploying software提供支持。它已开发用于在多种语言和平台上进行自动化,包括Java,Scala,Android,C/C ++和Groovy。 Gradle提供了与几种开发工具和服务器的集成,包括Eclipse,IntelliJ,Jenkins和Android Studio。

大型项目(例如 Spring项目Hibernate项目 Grails项目)使用Gradle。 LinkedIn Netflix 等一些领先的企业公司都使用Gradle。

Gradle最初于2007年发布,并于2019年11月18日稳定发布(最新版本6.0.1)。 Gradle利用了Ant和Maven的优点,并消除了两者的缺点。

什么是构建工具?

生成工具是程序,用于自动从源代码创建可执行文件。构建过程包括编译,链接和将代码打包为有用或可执行的形式。开发人员通常为小型项目手动实施构建过程。但是,对于大型项目而言,这是很难做到的,因为大型项目很难跟踪构建所需的内容,构建过程中的顺序和依存关系。使用自动化工具可以使构建过程更加一致。

Gradle项目和任务

Gradle根据projectstasks描述所有内容。每个 Gradle版本都包含一个或多个项目,这些项目包含一些任务。

Gradle Projects

在Gradle中,项目表示库JAR或Web应用程序。它也可能代表发行版ZIP,该发行版是由其他项目产生的JAR汇编而成的。一个项目可能会将您的应用程序部署到暂存或生产环境。 Gradle中的每个项目都由一个或多个任务组成。

Gradle Tasks

在Gradle中,任务是构建执行的一项工作。例如,它可以compile classcreate a JAR Generate Javadoc ,以及publish some archives发布到存储库和更多。

Gradle特点

Gradle的一些显着功能如下:

摇篮的特点

高性能

Gradle通过重用上一次执行的输出来快速完成任务。它处理仅更改输入的任务,并并行执行任务。因此,它避免了不必要的任务,并提供了更快的性能。

免费和开源

Gradle是一种开源工具,并根据 Apache许可(ASL)获得许可。

支持Ant Tasks和Maven repositories

Gradle为Ant构建项目提供支持;我们可以导入一个Ant构建项目并重用其所有任务。但是我们也可以进行基于Ant的Gradle任务。集成包括属性(properties),路径(path)等。

Gradle支持Maven存储库。 Maven信息库旨在发布和获取项目的依赖项。因此,我们可以继续使用任何可用的存储库基础结构。

支持多项目构建

Gradle为多项目构建提供强大的支持。一个多项目构建可能包含一个根项目以及一个或多个子项目,这些子项目也可能包含子项目。我们可以使用Gradle灵活地定义布局。

一个项目可以简单地依赖于其他项目或依赖项。我们可以描述项目之间的依赖关系图。 Gradle还支持部分构建。这意味着Gradle将找出我们的项目所依赖的项目是否需要重建。如果需要重建项目,Gradle会在构建我们自己的项目之前这样做。

可扩展性

可扩展性是Gradle的一项不错的功能。我们可以轻松扩展Gradle以提供我们的任务类型或构建模型。有关此示例,请参阅Android Build支持:它添加了几个新的构建概念,例如flavor和构建类型。

增量构建

Gradle通过增量构建为我们提供了便利,这意味着它仅执行必要的任务。如果我们编译源代码,它将检查自上一次执行以来源是否已更改。如果代码被更改,它将被执行;但是,如果代码未更改,则它将跳过执行,并将任务标记为已更新。 Gradle中有很多算法可以做到这一点。

我们需要一个JVM来运行Gradle,因此我们的机器应具有Java开发套件(JDK)。 Gradle熟悉大多数Java功能。对于Java用户而言,这是一个额外的好处,因为我们可以在构建逻辑中使用标准的Java API,例如插件自定义任务。因此,可以轻松在不同平台上运行Gradle。

Gradle不仅限于构建JVM项目。它还为构建本机项目提供支持。

IDE Support

Gradle具有对多个IDE的支持。他们被允许导入Gradle构建并与之交互。 Gradle还将生成所需的解决方案文件,以将项目加载到Visual Studio中。

构建扫描

构建扫描提供了有关构建运行的全面信息,可用于识别构建问题。它们还帮助我们诊断构建性能的问题。构建扫描可以与其他人共享。如果我们需要建议来解决构建问题,这将很有用。

为什么要Gradle?

Gradle是一种现代的构建工具,可用来思考我们在ANT和Maven等其他工具上所面临的挑战。生成工具应有助于我们实现项目自动化的目标。因此,我们不应在可维护性,可用性,灵活性,可扩展性或性能上妥协。

开发它是为了克服Maven和Ant的缺点,并支持各种IDE。它具有很多插件,可以在我们的预测中编写。此外,它还可以用于大型项目,例如Spring项目,Hibernate项目和Grails项目。因此,对于我们来说,选择Gradle作为构建工具可能是正确的选择。

先决条件

在学习Gradle之前,您必须具有Java编程和Groovy编程的基础知识。

这一章你学到了什么?做个笔记,好记忆不如烂笔头! 请将遇到的问题写入评论区中,大家一起进步。

祝学习愉快!(您也可以 选中需要修改的内容->右键->进行编辑)

点我分享笔记