Gradle知识概括

Gradle是一种灵活的自动化构建工具,融合了Ant和Maven的优势,支持DSL编写构建脚本。它提供了良好的灵活性、粒度控制和强大的插件机制。本文详细介绍了Gradle的安装配置、项目构建、Groovy语法基础、Project和Task、插件以及生命周期,帮助读者深入理解Gradle在构建Web应用中的应用。
摘要由CSDN通过智能技术生成

Gradle简介

Gradle背景:

  • 早期没有项目管理工具时,对于项目所依赖的第三方包采用的事:拷贝三方jar包到本地,然后加入到lib目录下,这样做劣势不言而喻,管理复杂容易冲突。
  • Ant:2000年发布,纯java编写
  • Maven:2004年发布,采用pom.xml管理项目
  • Gradle:2012年,google背书的一款项目管理工具

Gradle简介:

  • Gradle是一种开源自动化构建工具,支持多语言环境,受Ant、Maven思想的影响,集二者之大成,相比Ant的不规范,Maven的配置复杂、生命周期限制较多,Gradle既规范也更灵活,可以使用DSL(领域特定语言,如Groovy)编写构建,脚本更加精悍。本课程基于Gradle7讲解。
  • 优势:
    ①灵活性:相对于 Maven、Ant 等构建工具,Gradle 提供了一系列的 API 让我们有能力去修改或定制项目的构建过程。
    ②粒度性:源码的编译,资源的编译,都是一个一个Task的,我们可以修改task来达到精细控制上。
    ③扩展性:Gradle 支持插件机制,所以我们可以复用这些插件,就如同复用库一样简单方便。
    ④兼容性:Gradle 不仅自身功能强大,而且它还能兼容所有的Maven、Ant功能,也就是说,Gradle 吸取了所有构建工具的长处。
    ⑤Spring源码采用Gradle进行管理
  • 劣势:
    ①每一个版本都较上一次有非常大的改动,没有做较好向上兼容。
    ②学习成本高,groovy脚本语言
  • Gradle组成:
    在这里插入图片描述

Gradle安装配置:

  • 地址:官网下载
  • 下载后解压到本地:
    ①binary-only版本(-bin后缀):只有可执行文件
    ②complete版本(-all后缀):除了可执行文件还包含Gradle的源码和源码文档说明
  • 下载后解压,配置环境变量:
    ①新建GRADLE_HOME环境变量,将gradle根目录配置
    ②在path中加入项%GRADLE_HOME%\bin,类似于JDK或Maven的配置
    ③打开CMD,执行gradle -v,成功输出版本则表示安装配置完成
  • 注意:真实工作中由于各项目版本不一,并不会使用本地配置的gradle,而是采用wrapper的方式进行。

Gradle详解:

  • Gradle中2大对象:Project和Task。
    ①一个构件脚本就是一个project,任何一个Gradle构建都是由一个或多个project组成,大家可以把一个project比作一个pom模块或一个jar,每一个project都是一个groovy脚本文件。
    ②task顾名思义就是任务,它是Gradle中最小的执行单元,类似于一个method或function函数,如编译、打包、生成javadoc等,一个project中会有多个tasks。

Gradle构建Web

创建Gradle项目:

  • 手动创建:
    ①执行gradle init创建项目
  • 快速搭建(https://start.spring.io/):
    ①Gradle版的SpringBoot
    ②Maven版的SpringBoot

项目结构解析:

├─build.gradle                        ①
├─gradlew                             ②
├─gradlew.bat						  ③
├─settings.gradle                     ④
├─gradle                              ⑤
│  └─wrapper                          
│      ├─ gradle-wrapper.jar          
│      ├─ gradle-wrapper.properties   
└─src                                 ⑥
    ├─main                            
    └─test
  • 1.项目自动编译的时候要读取的配置文件。比如指定项目的依赖包等。build.grade有两个,一个是全局的,一个是在模块里面。全局的build.grade主要设置的是声明仓库源,gradle的版本号说明等。
  • 2.linux下的gradle环境脚本,可以执行gradle指令,如:./gradlew build。
  • 3.windows下的gradle环境,可以执行gradle指令。
  • 4.包含必要的一些设置,例如,任务或项目之间的依懒关系等,无论有多少个子模块,该文件只会有一个,且一定在根项目中。
  • 5.包含wrapper文件夹及其2个子文件,作用是:可以自动安装gradle环境。
  • 6.程序源码。

build.gradle基础结构:

/******** 普通程序 gradle init初始化 ******/
plugins {
    // Apply the java plugin to add support for Java
    id 'java'
    ...
}
repositories {
    // Use jcenter for resolving dependencies.
    // You can declare any Maven/Ivy/file repository here.
    jcenter()
}
dependencies {
    implementation 'com.google
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值