百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

强大的项目自动化构建开源工具Gradle

toyiye 2024-08-09 10:24 17 浏览 0 评论

# 基于Groovy的新一代构建工具,Gradle

## 目录

  • 第1章 课程介绍
  • 第2章 准备使用Gradle
  • 第3章 第一个Gradle项目
  • 第4章 高级应用
  • 第5章 课程总结

## 第1章 课程介绍

### 1-1项目自动化介绍(03:29)

- 1. 构建工具的作用

  • - ◆依赖管理
  • - ◆测试、打包、发布
  • - ◆机器能干的活,绝不自己动手

- 2. 主流共构建工具(图)


- 3. Gradle是什么

- 一个开源的项目自动化构建工具,建立在Apache Ant和Apache Maven概念的基础上,并引入了基于Groovy的特定领域语言( DSL) ,而不再使用XML形式管理构建脚本

### 1-2课程介绍(02:09)

## 第2章 准备使用Gradle

### 2-1 gradle安装(05:42)

- 1. 安装

- 配置环境变量,
- GRADLE HOME
- ◆添加到path , %GRADLE_ _HOME%\bin;
- ◆验证是否安装成功, gradle -V

### 2- -2 groovy基础知识-理论介绍(02:47)

- 1. Groovy是什么

- Groovy是用于Java虚拟机的一种敏捷的动态语言, 它是一种成熟的面向对象编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言。使用该种语言不必编写过多的代码,同时又具有闭包和动态语言中的其他特性。

- 2. 与Java比較

  • - ◆Groovy完全兼容Java的语法
  • - ◆分号是可选的
  • - ◆类、方法默认是public的
  • - ◆编译器给属性自动添加getter/setter方法
  • - ◆属性可以直接用点号获取
  • - ◆最后一个表达式的值会被作为返回值
  • - ◆==等同于equals(),不会有NullPointerExceptions

- 3. 高效的Groovy特性

  • - ◆assert语句
  • - ◆可选类型定义
  • - ◆可选的括号
  • - ◆字符串.
  • - 集合API .
  • - 闭包

### 2-3 groovy基础知识-与java比较(05:38)

参考附录 Groovy 语言快速入门

### 2-4 groovy基础知识-高效特性(10:55)

参考附录 Groovy 语言快速入门

### 2- 5 groovy基础知识-重点(01:46)

参考附录 Groovy 语言快速入门

## 第3章 第一个Gradle项目

### 3-1 第一个gradle项目-介绍(02:01)

### 3-2 TODO-应用程序版本(08:34)

参考视频

### 3- -3 TODO -WEB版(05:26)

参考视频

## 第4章 高级应用

### 4-1构建脚本介绍(08:50)

- 构建块

- Gradle构建中的两个基本概念是项目( project )和任务(task)每个构建至少包含一个项目, 项目中包含一个或多个任务。在多项目构建中, -个项目可以依赖于其他项目;类似的,任务可以形成一个依赖关系图来确保他们的执行顺序

- 项目(project)

  • - -个项目代表-个正在构建的组件(此如一 个jar文件) ,当构建启动后, Gradle会基于build.gradle实例化一个org.gradle.api.Project类,并且能够通过project变量使其隐式可用.
  • - group.
  • - name. version
  • - apply. dependencies. repositories. task
  • - 属性的其他配置方式: ext、gradle.properties

- 任务(task)

  • - 任务对应org.gradle.api.Task.主要包括任务动作和任务依赖。任务动作定义了一个最小的工作单元。可以定义依赖于其他任务、动作序列和执行条件。
  • - dependsOn
  • - doFirst、doLast

### 4-2自定义任务(06:47)

### 4-3构建生命周期(03:45)

### 4-4 依赖管理(12:03)

- 概述

- 几乎所有的基于JVM的软件项目都需要依赖外部类库来重用现有的功能。自动化的依赖管理可以明确依赖的版本可以解决因传递性依赖带来的版本冲突。

- 常用仓库

  • - ◆mavenLocal/mavenCentral/jcenter
  • - ◆自定义maven仓库
  • - ◆文件仓库

- 依赖的传递性

  • - ◆B依赖A ,如果C依赖B ,那么C依赖A

- 依赖阶段配置

  • - compile、runtime
  • - testCompile、testRuntime

- 依赖阶段关系(图)

### 4-5 解决版本冲突(07:20)

- 解决冲突

- 查看依赖报告

- 排除传递性依赖

- ◆强制一个版本

- 修改默认解决策略

configurations.all {
	resolutionStrategy {
		failOnVersionConflict()
	}
}


### 4-6 多项目构建介绍(07:03)

- 项目模块化

- 在企业项目中,包层次和类关系比较复杂,把代码拆分成模块通常是最佳实践,这需要你清晰的划分功能的边界,比如把业务逻辑和数据持久化拆分开来。项目符合高内聚低耦合时,模块化就变得很容易,这是一条非常好的软件开发实践

- 配置子项目

- 配置要求.

  • - ◆所有项目添加logback日志功能
  • - ◆统一配置公共属性

### 4-7多项目构建实战(09:21)

### 4-8自动化测试(06:44)

- 自动化测试

- 一些开源的测试框架比如JUnit, TestNG能够帮助你编写可复用的结构化的测试,为了运行这些测试,你要先编译它们,就像编译源代码一样。测试代码的作用仅仅用于测试的情况,不应该被发布到生产环境中,需要把源代码和测试代码分开来。


- 项目布局(图)

- 测试发现

  • - ◆任何继承自junit.framework.TestCase或groovy.util.GroovyTestCase的类
  • - ◆任何被 @RunWith注解的类
  • - ◆任何至少包含一个被@Test注解的类

### 4-9发布(04:19)

## 第5章 课程总结

### 5-1 6课程总结(02:47)

## 参考资料

- [新一代构建工具gradle](https://www.imooc.com/learn/833)

- [Groovy 语言快速入门](https://www.jianshu.com/p/e8dec95c4326)

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码