Gradle入门级教程,看完不会你找我!

Gradle入门级教程,看完不会你找我!3 5 分钟 让你彻底学会使用 Gradle 绝对通俗易懂 不懂你找我 gradle

大家好,欢迎来到IT知识分享网。

1、概述

Gradle 是一种流行的构建自动化工具,用于在软件开发过程中自动化执行各种任务,如编译、运行测试、打包和部署【可以理解成和Maven的作用一样,只不过更灵活强大一些】。以下是Gradle的简要介绍:

1.1、特点和优势
  1. 灵活性:支持多语言项目,易于定制和扩展。
  2. 性能:采用增量构建和缓存机制,提高构建速度。
  3. 可读性:使用Groovy或Kotlin等DSL编写构建脚本,易于阅读和维护。
  4. 插件生态系统:丰富的插件库,支持各种工具和框架的集成。
  5. 多项目构建:对多模块项目和依赖管理提供良好支持。
1.2、工作原理

Gradle基于领域特定语言(DSL)来描述构建过程。它使用Groovy或Kotlin语言编写脚本,这些脚本定义了项目的结构、依赖和所需操作。

Gradle会根据这些脚本文件来执行各种构建任务,它会自动处理依赖关系、并行执行任务,并在必要时重新构建已经改变的部分。

1.3、应用领域

Gradle广泛应用于Java、Kotlin、Groovy等语言的项目中,同时也被用于构建Android应用程序。它还可以被用于构建C/C++、JavaScript等不同类型的项目。

总之,Gradle作为一款灵活且功能强大的构建工具,为开发人员提供了高效构建和自动化的能力,有助于简化项目的管理和部署过程。

2、安装

2.1、官网地址

Gradle入门级教程,看完不会你找我!

2.2、下载列表

此次安装用的是7.6.3版本,如需其他版本请自行下载即可,由于Gradle是基于Java的,因此首先要安装Java JDK,本文不做详述;

Gradle入门级教程,看完不会你找我!

Gradle入门级教程,看完不会你找我!

2.3、解压安装

将下载的zip压缩包解压后放到指定文件夹即可,如下图:

Gradle入门级教程,看完不会你找我!

2.4、配置环境变量

Gradle入门级教程,看完不会你找我!

Gradle入门级教程,看完不会你找我!

Gradle入门级教程,看完不会你找我!

以上仅完成了gradle的环境变量配置,由于gradle需要下载相关依赖包,默认是在c盘里面,后续可能会占用较多磁盘,因此增加一个环境变量的配置,修改下载下来的依赖的存储位置,可以理解成maven的location标签配置,具体如下图:

Gradle入门级教程,看完不会你找我!

2.5、验证是否成功

以下图片证明安装成功:

Gradle入门级教程,看完不会你找我!

3、配置全局脚本

可以在gradle的init.d目录下,创建以.gradle结尾的文件,.gradle文件可以实现在build开始之前执行。因此可以在这个文件中配置预先加载的操作。当然你也可以直接配置到具体的项目里面,使用方式和maven类似,具体文件里面的内容如下【可以根据实际情况进行调整】;

allprojects {    repositories {        mavenLocal()        maven { name "Alibaba" ; url "https://maven.aliyun.com/repository/public" }        maven { name "Bstek" ; url "https://nexus.bsdn.org/content/groups/public/" }        mavenCentral()   } ​    buildscript {        repositories {            maven { name "Alibaba" ; url 'https://maven.aliyun.com/repository/public' }            maven { name "Bstek" ; url 'https://nexus.bsdn.org/content/groups/public/' }            maven { name "M2" ; url 'https://plugins.gradle.org/m2/' }       }   } }
  1. allprojects:这部分表示我们正在配置所有项目的仓库设置。这确保了对整个构建进行全局设置。
  2. repositories:这一部分指定了项目的依赖仓库。在这里,我们使用了几种不同的仓库来源:
    • mavenLocal():这行代码告诉 Gradle 使用本地 Maven 仓库作为第一个依赖源。
    • maven { name "Alibaba" ; url "https://maven.aliyun.com/repository/public" }:这表示我们向 Gradle 声明了一个名为 “Alibaba” 的远程 Maven 仓库,指定了阿里云镜像的地址。
    • maven { name "Bstek" ; url "https://nexus.bsdn.org/content/groups/public/" }:这一行声明了一个名为 “Bstek” 的远程 Maven 仓库,指定了 Nexus 私有仓库的地址,可以根据自己实际情况修改配置。
    • mavenCentral():最后,我们指定了 Maven 中央仓库,作为备用的依赖源,直接声明即可,无需额外配置。
  3. buildscript:这部分指定了构建脚本的仓库配置。
    • repositories:在这里,我们又一次定义了构建脚本的仓库配置,包括了多个 Maven 仓库:
      • maven { name "Alibaba" ; url 'https://maven.aliyun.com/repository/public' }:这里再次声明了名为 “Alibaba” 的 Maven 仓库,以确保构建脚本能够从阿里云镜像获取依赖。
      • maven { name "Bstek" ; url 'https://nexus.bsdn.org/content/groups/public/' }:同样地,我们也声明了名为 “Bstek” 的 Maven 仓库,以供构建脚本使用。
      • maven { name "M2" ; url 'https://plugins.gradle.org/m2/' }:最后,我们指定了来自 plugins.gradle.org 的额外 Maven 仓库,用于获取 Gradle 插件。

通过这样的配置,Gradle 将会优先使用本地 Maven 仓库,如果找不到所需的依赖,它会依次尝试使用阿里云镜像、Nexus 私有仓库和 Maven 中央仓库,同时还会从额外的插件仓库中获取 Gradle 插件。

注意点:

配置中有 mavenLocal() 就是说明首先使用 maven 的本地仓库获取依赖。因此需要配置 M2_HOME 环境变量,但是本地实际上有木有都是没有影响的,解释如下:

添加 mavenLocal() 依赖仓库并不要求你在电脑上安装 Maven。这是因为 mavenLocal() 实际上指向的是本地 Maven 仓库目录,而不是 Maven 工具本身。 ​ 当你在 Gradle 项目中使用 mavenLocal() 时,Gradle 将尝试从默认的本地 Maven 仓库目录(通常在用户目录下的 .m2 文件夹)中解析依赖。如果你的电脑上没有安装 Maven,那么该目录可能为空或者不存在。 ​ 在这种情况下,如果你尝试从 mavenLocal() 中解析依赖,Gradle 可能会失败,因为它无法在本地 Maven 仓库中找到相应的依赖。但这并不会影响你的系统或其他项目的正常运行。 ​ 因此,如果你没有安装 Maven,且没有在本地 Maven 仓库中手动安装依赖,添加 mavenLocal() 依赖仓库对你的项目实际上没有积极的影响。一般情况下,只有在你确切知道本地 Maven 仓库中存在所需的依赖时才会使用 mavenLocal()。

Gradle入门级教程,看完不会你找我!

4、集成IDEA

Gradle入门级教程,看完不会你找我!

首先创建一个springboot项目,步骤如下:

Gradle入门级教程,看完不会你找我!

Gradle入门级教程,看完不会你找我!

Gradle入门级教程,看完不会你找我!

Gradle入门级教程,看完不会你找我!

Gradle入门级教程,看完不会你找我!

Gradle入门级教程,看完不会你找我!

以上便完成了gradle与idea的集成;

5、目录结构分析

Gradle入门级教程,看完不会你找我!

src结构为项目目录;gradle文件夹 存放gradle wrapper相关文件;build.gradle相当于maven里面的pom.xml,setting.gradle用于多模块的配置;

Gradle Wrapper 是一个用于管理和分发 Gradle 版本的工具,它允许你在项目中使用特定版本的 Gradle 而无需手动安装。该工具附带了一组脚本和文件,使得项目能够在不同的环境中始终使用相同版本的 Gradle 进行构建。

6、常用功能

6.1、常用命令对比
命令 Gradle Maven
构建项目 ./gradlew build mvn clean install
清理项目 ./gradlew clean mvn clean
运行测试 ./gradlew test mvn test
生成项目文档 ./gradlew javadoc mvn javadoc:javadoc
发布到远程仓库 ./gradlew publish mvn deploy
列出项目依赖 ./gradlew dependencies mvn dependency:tree
扫描项目依赖漏洞 ./gradlew dependencyCheckAnalyze mvn org.owasp:dependency-check-maven:check
创建新项目 使用初始化插件,如 Spring Initializr mvn archetype:generate
6.2、常用功能

Gradle 提供了许多常用功能,包括但不限于以下内容:

  1. 增加依赖:通过在构建脚本中添加依赖声明来引入外部库。例如使用 implementation 关键字添加编译时依赖,或者使用 testImplementation 添加测试时依赖。
    dependencies {    implementation 'com.example:library:1.0.0'    testImplementation 'junit:junit:4.12' }
  2. 剔除依赖:有时候你可能需要排除特定的传递性依赖。你可以使用 exclude 方法来剔除依赖项。
    dependencies {    implementation('com.example:library:1.0.0') {        exclude group: 'org.unwanted', module: 'unwanted-module'   } }
  3. 全局依赖版本管理:使用 dependencyManagement 插件进行全局依赖版本管理。这样一来,你就可以在单独的位置定义和管理依赖库的版本,而不需要在每个模块中都重复声明。
    dependencyManagement {    imports {        mavenBom 'group:artifact:version'   } }
  4. 增加插件:通过 plugins 块或者 apply plugin 语句来增加插件。Gradle 提供了很多内置的插件,同时也可以使用第三方插件。
    plugins {    id 'java'    id 'application' }
  5. 自定义任务:你可以创建自定义任务来执行项目特定的操作,比如清理临时文件、运行定制化的构建过程等等。

这些只是 Gradle 提供的众多功能之一。Gradle 还提供了许多其他强大的功能,比如多项目构建、增量构建、构建缓存、定制化构建逻辑等等。Gradle 的灵活性使得它成为一个广泛使用的构建工具,能够满足各种不同规模和类型的项目需求,具体的请自行探索。

7、参考文献

  • Gradle Build Tool
  • 1–Gradle入门 – 简介、安装、目录结构、创建项目_gradle install-CSDN博客

添加公众号了解更多,定期分享、绝对实用,绝对对你有帮助!

Gradle入门级教程,看完不会你找我!

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/123193.html

(0)
上一篇 2024-11-19 18:26
下一篇 2024-11-19 18:33

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信