Blue Flower

Gradle是一个通用的自动化构建工具,类似于传统工具如Ant和Maven,但如何更好的入门呢?知识兔小编特别介绍大家阅读实战gradle,这是一本关于使用Gradle实现端到端的项目自动化的综合指南,由美国程序员Benjamin Muschko编著,本书从基础知识开始介绍,具有实践性,易于阅读,讨论了在实际项目中如何建立高效的完整的构建过程。在这个过程中,涵盖了一些高级话题,如测试、持续集成和代码质量监测,你还会体验到像设置目标环境和部署软件这样的具体任务。实战gradle主要介绍了关于Gradle的综合指南,真实的实践案例,从Ant和Maven过渡,深入讲解插件开发,使用Gradle实现持续交付等等,适用于软件构建者阅读。
202209171729528770850000

内容介绍

《实战gradle》全方位地讲解了Gradle 工具相关的知识,包括Gradle 的基本识、自动化构建的基本概念和实践,以实际案例的方式解释如何使用Gradle 进行软件项目构建。除了基础知识外,由于软件开发绝对不仅仅是实现业务逻辑代码,书中还介绍了一些解决软件开中常见问题的实践,如多语言、多项目构建,Gradle 在持续集成和持续交付中的应用,Gradle 构建JVM 其他语言,以及Gradle 集成JavaScript 构建等。云计算和DevOps 的兴起,给软件行业带来了翻天覆地的变化,书中对于云计算平台、开源社区的一些工具与Gradle 的结合使用也做了相关的介绍。因为Groovy用于编写Gradle 构建配置的DSL,所以为了帮助读者更好地理解Gradle,本书还讲了Groovy 的基本知识,虽然不是全方位地讲解Groovy,但是理解Gradle 足矣。
202209171729531266740001

实战gradle章节目录

第1 部分 Gradle 介绍 11 项目自动化介绍 31.1 没有项目自动化的生活 41.2 项目自动化的好处 51.2.1 防止手动介入 51.2.2 创建可重复的构建 51.2.3 让构建便携 51.3 项目自动化的类型 61.3.1 按需构建 61.3.2 触发构建 71.3.3 预定构建 71.4 构建工具 81.4.1 什么是构建工具 91.4.2 构建工具的剖析 101.5 Java 构建工具 121.5.1 Apache Ant 121.5.2 Apache Maven 161.5.3 对下一代构建工具的需求 191.6 总结 202 下一代构建工具:Gradle 232.1 为什么要用Gradle,为什么是现在 242.1.1 Java 构建工具的演变 252.1.2 为什么应该选择Gradle 272.2 Gradle 引人注目的特性集 292.2.1 可表达性的构建语言和底层的API 292.2.2 Gradle 就是Groovy 312.2.3 灵活的约定 322.2.4 鲁棒和强大的依赖管理 332.2.5 可扩展的构建 342.2.6 轻松的可扩展性 342.2.7 和其他构建工具集成 352.2.8 社区和公司的推动 362.2.9 锦上添花:额外的特性 362.3 更大的场景:持续交付 362.3.1 从构建到部署自动化项目 372.4 安装Gradle 382.5 开始使用Gradle 402.6 使用Gradle 的命令行 422.6.1 列出项目中所有可用的task 432.6.2 任务执行 442.6.3 命令行选项 462.6.4 Gradle 守护进程 472.7 总结 483 通过范例学习构建Gradle 项目 493.1 介绍学习案例 503.1.1 To Do 应用程序 503.1.2 任务管理用例 503.1.3 检查组件交互 513.1.4 构建应用功能 523.2 构建Java 项目 553.2.1 使用Java 插件 553.2.2 定制你的项目 593.2.3 配置和使用外部依赖 603.3 用Gradle 做Web 开发 623.3.1 添加Web 组件 623.3.2 使用War 和Jetty 插件 643.4 Gradle 包装器 693.4.1 配置包装器 703.4.2 使用包装器 713.4.3 定制包装器 733.5 总结 73第2 部分 掌握基本原理 754 构建脚本概要 774.1 构建块 784.1.1 项目 784.1.2 任务 804.1.3 属性 804.2 使用task 824.2.1 项目版本管理 824.2.2 声明task 动作 834.2.3 访问DefaultTask 属性 844.2.4 定义task 依赖 854.2.5 终结器task 864.2.6 添加任意代码 874.2.7 理解task 配置 874.2.8 声明task 的inputs 和outputs 904.2.9 编写和使用自定义task 924.2.10 Gradle 的内置task 类型 954.2.11 task 规则 974.2.12 在buildSrc 目录下构建代码 1004.3 挂接到构建生命周期 1014.3.1 挂接到task 执行图 1034.3.2 实现task 执行图监听器 1034.3.3 初始化构建环境 4.4 总结 1065 依赖管理 1075.1 依赖管理概述 1085.1.1 不完善的依赖管理技术 1085.1.2 自动化依赖管理的重要性 1085.1.3 使用自动化依赖管理 1105.1.4 自动化依赖管理的挑战 1105.2 通过例子学习依赖管理 1125.3 依赖配置 1135.3.1 理解配置API 表示 1135.3.2 自定义配置 1145.3.3 访问配置 1155.4 声明依赖 1155.4.1 理解依赖API 表示 1165.4.2 外部模块依赖 1175.4.3 文件依赖 1215.5 使用和配置仓库 1225.5.1 理解仓库API 表示 1235.5.2 Maven 仓库 1245.5.3 Ivy 仓库 1265.5.4 扁平的目录仓库 1265.6 理解本地依赖缓存 1275.6.1 分析缓存结构 1275.6.2 显著的缓存特性 1295.7 解决依赖问题 1305.7.1 应对版本冲突 1305.7.2 强制指定一个版本 1315.7.3 使用依赖观察报告 1315.7.4 刷新缓存 1325.8 总结 1336 多项目构建 1356.1 模块化项目 1366.1.1 耦合与内聚 1366.1.2 模块划分 1376.1.3 模块化重构 1386.2 组装多项目构建 1396.2.1 settings 文件介绍 1406.2.2 理解settings API 表示 1416.2.3 settings 执行 1426.2.4 获取settings 文件 1426.2.5 分层布局与扁平布局 1436.3 配置子项目 1446.3.1 理解Project API 表示 1456.3.2 定义特定的行为 1466.3.3 声明项目依赖 1476.3.4 多项目部分构建 1496.3.5 声明跨项目的task 依赖 1516.3.6 定义公共行为 1536.4 独立的项目文件 1546.4.1 为每个项目创建构建文件 1556.4.2 定义根项目的构建代码 1556.4.3 定义子项目的构建代码 1556.5 自定义项目 1566.6 总结 1577 Gradle 测试 1597.1 自动化测试 1607.1.1 自动化测试类型 1607.1.2 自动化测试金字塔 1607.2 测试Java 应用程序 1617.2.1 项目布局 1627.2.2 测试配置 1627.2.3 测试task 1637.2.4 自动化测试检测 1647.3 单元测试 1647.3.1 使用JUnit 1647.3.2 使用其他的单元测试框架 1687.3.3 结合使用多个单元测试框架 1707.4 配置测试执行 1727.4.1 命令行选项 1737.4.2 理解测试API 表示 1747.4.3 控制运行时行为 1757.4.4 控制测试日志 1767.4.5 并行执行测试 1787.4.6 响应测试生命周期事件 1797.4.7 实现测试监听器 1807.5 集成测试 1817.5.1 引入用例研究 1817.5.2 编写测试类 1817.5.3 在构建中支持集成测试 1827.5.4 为集成测试建立约定 1847.5.5 引导测试环境 1867.6 功能测试 1877.6.1 引入用例研究 1877.6.2 在构建中支持功能测试 1887.7 总结 1928 扩展Gradle 1958.1 通过案例学习介绍插件 1968.1.1 在云中使用Grade 管理应用 1968.1.2 设置云环境 1978.2 从零起步构建插件 2008.3 写一个脚本插件 2018.3.1 添加CloudBees 的API 类库 2018.3.2 在task 中使用CloudBees 的API 2028.4 编写定制的task 类 2068.4.1 定制task 的实现选项 2068.4.2 在buildSrc 下定义定制任务 2078.5 使用和构建对象插件 2148.5.1 使用对象插件 2158.5.2 解析对象插件 2178.5.3 编写对象插件 2188.5.4 插件扩展机制 2198.5.5 给插件一个有意义的名字 2228.5.6 测试对象插件 2228.5.7 开发和使用独立的对象插件 2248.6 总结 2269 集成与迁移 2299.1 Ant 与Gradle 2309.1.1 在Gradle 中使用Ant 脚本功能 2319.1.2 在Gradle 中使用标准的Ant 任务 2379.1.3 迁移策略 2399.2 Maven 和Gradle 2429.2.1 异同之处 2439.2.2 迁移策略 2469.3 比较构建 2499.4 总结 251第3 部分 从构建到部署 25310 IDE 支持和工具 25510.1 使用IDE 插件生成项目文件 25610.1.1 使用Eclipse 插件 25710.1.2 使用IDEA 插件 26510.1.3 使用Sublime Text 插件 27010.2 在流行的IDE 中管理Gradle 项目 27310.2.1 SpringSource STS 对Gradle 的支持 27410.2.2 IntelliJ IDEA 对Gradle 的支持 27810.2.3 NetBeans 对Gradle 的支持 28010.3 使用工具API 集成Gradle 28310.4 总结 28711 构建多语言项目 28911.1 使用Gradle 管理JavaScript 29011.1.1 处理JavaScript 的典型task 29011.1.2 在To Do 应用程序中使用JavaScript 29111.1.3 对JavaScript 库依赖管理 29211.1.4 利用第三方Ant task 合并和压缩JavaScript 29411.1.5 将JavaScript 优化作为开发工作流的一部分 29611.1.6 使用外部的Java 库分析JavaScript 代码 29711.1.7 使用第三方Gradle JavaScript 插件 29911.1.8 在Gradle 中使用Grunt 30011.2 构建基于JVM 的多语言项目 30311.2.1 JVM 语言插件的基本功能 30311.2.2 构建Groovy 项目 30511.2.3 构建Scala 项目 31011.3 其他语言 31411.4 总结 31512 代码质量管理和监测 31712.1 将代码分析集成到构建中 31812.2 衡量代码覆盖率 31912.2.1 探索代码覆盖率工具 32012.2.2 使用JaCoCo 插件 32212.2.3 使用Cobertura 插件 32412.3 执行静态代码分析 32612.3.1 探讨静态代码分析工具 32712.3.2 使用Checkstyle 插件 32912.3.3 使用PMD 插件 33112.3.4 使用FindBugs 插件 33312.3.5 使用JDepend 插件 33412.4 集成Sonar 33512.4.1 安装并运行Sonar 33712.4.2 使用Sonnar Runner 分析项目 33812.4.3 将代码覆盖率报告发布到Sonar 34012.5 总结 34313 持续集成 34513.1 持续集成的好处 34613.2 安装Git 34813.2.1 创建GitHub 账号 34813.2.2 forking GitHub 仓库 34913.2.3 安装和配置Git 34913.3 使用Jenkins 构建项目 35013.3.1 开始使用Jenkins 35013.3.2 安装Git 和Gradle 插件 35013.3.3 定义build job 35213.3.4 执行build job 35413.3.5 添加测试报告 35613.4 探索基于云的解决方案 35913.5 使用Jenkins 创建构建管道 36013.5.1 创建构建管道的挑战 36013.5.2 探索基本的Jenkins 插件 36113.5.3 配置构建管道 36413.6 总结 36614 打包和发布 36714.1 打包和分发 36814.1.1 定义附加包 36914.1.2 创建分发包 37114.2 发布 37414.2.1 发布到Maven 仓库中 37514.2.2 老的和新的发布机制 37614.2.3 声明软件组件为Maven 发布包 37614.2.4 发布软件组件到本地Maven 缓存中 37714.2.5 声明自定义的发布包 37914.2.6 修改所生成的POM 文件 38114.2.7 发布到本地Maven 仓库中 38314.2.8 发布到远程的Maven 仓库中 38514.3 发布到公共的二进制仓库 38814.3.1 发布到JFrog Bintray 中 38814.3.2 发布到Maven Central 39214.4 打包和发布作为构建管道的一部分 39314.4.1 构建一次 39314.4.2 发布一次并重用 39414.4.3 选择一个合适的版本管理方案 39514.4.4 在可部署包中加入构建信息 39814.4.5 发布To Do 应用程序WAR 文件 39914.4.6 扩展构建管道 40014.5 总结 40115 基础环境准备和部署 40315.1 准备基础环境 40415.1.1 基础设施即代码 40415.1.2 使用Vagrant 和Puppet 创建虚拟机 40515.1.3 从Gradle 执行Vagrant 命令 40715.2 针对部署环境 40915.2.1 在Groovy 脚本中定义配置 40915.2.2 使用Groovy 的ConfigSlurper 读取配置 41115.2.3 在构建中使用配置 41215.3 自动部署 41315.3.1 从二进制仓库中获取包 41315.3.2 确定必需的部署步骤 41515.3.3 通过SSH 命令部署 41515.4 部署测试 42015.4.1 使用冒烟测试验证部署成功 42015.4.2 使用验收测试验证应用程序功能 42315.5 将部署集成到构建管道中 42415.5.1 自动部署到测试环境 42515.5.2 部署测试 42515.5.3 按需部署到UAT 和产品环境 42615.6 总结 427A 驾驭命令行 429B Gradle 用户所需要了解的Groovy 435索引 447

使用说明

1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读>

下载仅供下载体验和测试学习,不得商用和正当使用。

下载体验

请输入密码查看内容!

如何获取密码?

 

点击下载