推广中文版翻译 https://lippiouyang.gitbooks.io/gradle-in-action-cn/content/
简短的内容
第 1 部份 介绍 GRADLE .....1
1 : 介绍项目自动化 3
2 : 下-代以 Gradle 建立 22
3 : Building Gradle 项目 的一个例子 48
第 2 部份 征服原则...73
4 : Build script 要素 75
5 : 依赖管理 105
6 : 多项目建立 133
7 : 测试用 Gradle 157
8 : 扩充 Gradle 191
9 : 整合和迁移 223
第 3 部份 从建造到配置的.....247
10 : IDE 支援而且用工具工作 249
11 : Building polyglot项目 282
12 : 代码性质管理和监听 310
13 : 连续整合 337
14 : 产物组合和发布 359
15 : 系统内各部分供给和配置 iii 395
内容
序 xiii
序文 xv
承认 xvii
关于这一书 xix
关于封面插图 xxiii
第 1 部份介绍 GRADLE。...1
1 介绍项目的自动化 3
1.1 没有项目自动化的生活 4
1.2 项目自动化 5 的利益
避免人工的干涉 5 : 产生可重复的建造 5
制造建造手提式的 6
1.3 项目自动化 6 的类型
要求的建造 6 : 引起了建造 7
预定的建造 7
1.4 Build 工具 8
用工具工作的一个建造是什么?9 : 一个建造的剖析用工具工作 10
1.5 Java 语言建造用工具工作 12
Apache Ant : Apache Maven : 需求为 12
一个下一代建造用工具工作 19
1.6 摘要 v 20
CONTENTS vi
2 下-代以 Gradle 22
2.1 建立为什么 Gradle?为什么现在?23
Java 语言建造的进化用工具工作 24
你为什么应该选择 Gradle 26
2.2 Gradle 的无法抗拒功能设定 28
表达的建造语言和深的 API 29
Gradle 是很帅的 : 有柔性的大会 31 30
强健、有力的依赖管理 32
可调整建造 : 容易的 extendibility 34 33
和其他建造整合用工具工作 : 社区驱使的 34
而且公司支持的 : 在蛋糕上的糖霜: 35
另外功能 35
2.3 较大的照片:连续递送 36
自动化从建造到配置 的你的项目 36
2.4 安装 Gradle 38
2.5 开始用 Gradle 40
2.6 使用指令行 42
列出一个项目 的可得任务: 任务运行 43 42
指令行选择项 : Gradle 精灵 46 45
2.7 摘要 47
3 Building 例子 48
3.1 介绍的一个 Gradle 项目个案研究 49
这做应用程序 : 任务管理使用预先探查 49 49
检查元件相互作用 : Building 这 50
应用程序的功能性 51
3.2 Building Java 语言项目 54
使用 Java 语言网络设备 : 使你的项目 符合客户需求 54
配置而且使用外部的依赖 59
3.3 Web 发展用 Gradle 61
增加网元件 : 使用war 61
而且突堤网络设备 63
3.4 Gradle 包裹器 68
安装包裹器 : 使用包裹器 70 69
使包裹器 符合客户需求 71
3.5 摘要 72
内容 viiPART 2 征服原则...73
4 Build script 要素 75
4.1 砌块 76
项目 : 任务 : 特性 79 76
4.2 工作用任务 80
管理项目 版: 宣布任务行动 81 80
存取 DefaultTask 特性 : 定义任务 82
依赖 : Finalizer 任务 : 增加 83
任意的代码 : 理解任务配置 85 85
宣布任务输入和输出 : 写作和 88
使用一个订制的任务 : Gradle 的内建任务打字 92 90
任务规定 : 建筑物安全法规在 buildSrc 目录 中 95
4.3 进入建造生命周期 之内钩住 99
进入任务之内钩住运行图表 : 实现 101
任务运行图表收听者 : 设定建造初值 101
环境 103
4.4 摘要 104
5 依赖管理 105
5.1 依赖管理 的快概观 106
有缺点的依赖管理技术 106
自动化的依赖管理 的重要性 107
使用自动化依赖管理 108了
自动化的依赖管理 的挑战 109
5.2 例子 的学问依赖管理 110
5.3 依赖配置 111
理解配置 API 表示法 111
定义一个订制的配置 112
存取一个配置 113
5.4 宣布依赖 114
理解依赖 API 表示法 114
外部的模组依赖 : 文件依赖 120 115
5.5 使用而且配置资源库 121
理解资源库 API 表示法 121
Maven 资源库 : 常春藤资源库 124 121
平坦的目录资源库 125
理解当地的依赖的
CONTENTS viii
5.6 贮藏 126
分析高速缓冲存储器结构 126
值得注意的快取技术扮演重要角色 127
5.7 问题解决依赖问题 128
回应版本争执 : 运行一特定的 128
12 9 版: 使用依赖洞察力报告 130
更新高速缓冲存储器 130
5.8 摘要 131
6 多项目建立 133
6.1个模块化一个项目 134
耦合和结合 : 识别模组 135 134
对模组 再因素 136
6.2 组合一个多项目建立 137
介绍设定申请 : 理解设定 138
API 表示法 : 设定运行 140 139
设定申请第 条决议案: 阶层的对平坦的规划 141 140
6.3 配置次项目 142
理解项目 API 表示法 143
定义特定的行为 : 宣布项目 144
依赖 : 部份多项目建立 147 145
宣布跨项目任务依赖 149
定义共同的行为 151
6.4 个别的项目申请 152
每一项目 创造建造文件: 定义根项目 153
建造代码 : 定义次项目建造编码 153 153
6.5 使项目 符合客户需求 154
6.6 摘要 155
7 测试 with Gradle 157
7.1 尝试自动化测试 158
自动化的类型测试 : 测试自动化使 成金字塔状 158
7.2 测试 Java 语言应用程序 159
项目规划 : 测试配置 161 160
测试任务 : 自动的测试检波 162 161
7.3 单位测试 162
使用 JUnit : 使用其它可能的单位测试 162
结构 : 多个单位测试 166
和声学 的结构 168
内容 ix 7.4 配置测试运行 170
指令行选择项 : 理解测试 171
API 表示法 : 控制运行时间行为 172 171
控制测试砍伐原木 : 平行的测试运行 175 174
对测试生命周期事件 产生反应: 实现一 176
测试收听者 177
7.5 整合测试 178
介绍个案研究 : 写测试类别 179 178
在建造 中的支援整合测试 180
为整合建立大会测试 181
拔靴带测试环境 183
7.6 功能的测试 184
介绍个案研究 : 支援功能的 184
在建造 中的测试 185
7.7 摘要 190
8 扩充 Gradle 191
8.1 介绍网络设备个案研究 192
在云中的应用程序管理以 Gradle 192
安装云环境 193
8.2 从零到网络设备 196
8.3 写一个 script 网络设备 197
增加 CloudBees 应用程式介面资料库 197
使用任务 的 CloudBees API 198
8.4 写作习惯任务分类 201
订制的任务实施选择项 202
在 buildSrc 中的定义一个订制的任务 202
8.5 使用而且建筑物件网络设备 209
应用物件网络设备 : 一个物件网络设备 的剖析 210
写一个物件网络设备 : 网络设备扩充 213
机制 : 分配一个意义深长的网络设备命名 217 214
尝试一个物件网络设备 : 发展而且消耗一 217
无与伦比的物件网络设备 218
8.6 摘要 221
9 整合和迁移 223
9.1个 Ant 和 Gradle 224
使用 Ant script Gradle 的功能性: 使用标准 225
Gradle 的 Ant 任务: 迁移策略 233 231
CONTENTS x
9.2 Maven 和 Gradle 236
共通性和不同 : 迁移策略 240 236
9.3 比较建造 243
9.4 摘要 245
从建造到配置的第 3 部份...247
10 IDE 支援而且用工具工作 249
10.1个使用的 IDE 网络设备产生项目文件 250
使用日蚀网络设备 : 使用主意网络设备 258 251
使用卓越的本文网络设备 264
10.2 管理 Gradle 在常用身份证 中项目 267
Gradle 支援在 SpringSource STS : Gradle 支援在 268
IntelliJ 主意 : Gradle NetBeans IDE 中的支援 271
10.3 埋置探温器 Gradle 用用工具工作 API 277
10.4 摘要 281
11 用 Gradle Building polyglot 项目 282
11.1 管理 Java 描述语言 283
典型的任务当行为用 Java 描述语言 283
使用 Java 描述语言在这做应用程序 284
依赖管理为 Java 描述语言程序馆 285
使用一个第三者合并而且使变小 Java 描述语言
Ant 任务 : Java 描述语言最佳化当做部份这 287
发展工作流程 : Java 描述语言代码分析使用 289
外部的 Java 语言程序馆 : 使用第三者 Gradle 290
Java 描述语言网络设备 : 运行 Gradle 的咕噜咕噜声 292
11.2 Building polyglot、以 Java虚拟机为基础的项目 296
以 Java虚拟机语言网络设备 的能力作基础 296
建筑很帅的项目 : 建筑 Scala 项目 303 298
11.3 其他语言 307
11.4 摘要 308
12 代码性质管理和监听 310
12.1 整合代码分析进入你的建造 之内 311
12.2 测定的代码报导 312
探究代码报导用工具工作 : 使用这 313
JaCoCo 网络设备 : 使用 Cobertura 网络设备 317 315
内容 xi 12.3 执行静态的代码分析 319
探究静态的代码分析用工具工作 : 使用这 320
Checkstyle 网络设备 : 使用 PMD 网络设备 324 322
使用 FindBugs 网络设备 : 使用这 326
JDepend 网络设备 327
12.4 以声纳 整合 328
安装而且运行声纳 : 分析一个项目 330
藉由声纳跑者 : 发布代码报导 331
韵律学对声纳 333
12.5 摘要 336
13 连续整合 的 337
13.1 连续整合的利益 338
13.2 安装 Git 340
创造一个 GitHub 帐户 : 分支这 340
GitHub 资源库 : 安装而且配置 Git 341 341
13.3 用煤柱中的窄道 Building 一个项目 342
出发煤柱中的窄道 : 安装 Git 和 342
Gradle 网络设备 : 定义建造工作 344 342
运行建造工作 : 增加测试报告 348 347
13.4 探究以云为基础的解决 351
13.5 仿制一个建造渠道用煤柱中的窄道 352
建筑一个渠道 的挑战: 探究必要的 352
煤柱中的窄道网络设备 : 配置渠道工作 356 353
13.6 摘要 358
14 产物组合和发布 359
14.1 Building 产物和分配 360
宣布另外产物 : 创造分配 363 361
14.2 发布产物对一个二进位的资源库 366
发布对一个 Maven 资源库 : 旧的对新的 366
发布机制 : 宣布一个软件元件当做 368
一本 Maven 出版 : 出版一个软件元件到 368
当地的 Maven 高速缓冲存储器 : 宣布订制的产物 369
因为出版 : 修改被产生的 Pomerania 种小狗 373 372
发布对一个当地的 Maven 资源库 : 发布到 375
一个遥远的 Maven 资源库 377
14.3 发布对一个公众的二进位的资源库 379
发布对 JFrog Bintray : 发布到 380
Maven 中央的 383
CONTENTS xii
14.4 产物组合和发布当做部份
建造渠道 385
Build 二进制码一经 : 公开一次,稍后重复使用 385 385
选择一个适当的版本系统 387
在一个可部署的产物 中的包括建造信息 390
出版你的做应用程序war 文件 391
扩充建造渠道 392
14.5 摘要 393
15 系统内各部分供给和配置 395
15.1个系统内各部分供给 396
系统内各部分当做代码 : 创造一个虚拟机器与 396
流浪汉和傀儡 : 运行 Gradle 的流浪汉 397
15.2 对准配置环境 401
在一个很帅的 script 中定义配置: 读这 401
配置用很帅的 ConfigSlurper : 使用这 403
配置在建造 各处 404
15.3 被自动化的配置 405
取回二进位的资源库 的产物 405
证明必需的配置第 步骤 407
透过 SSH 指令 的配置 407
15.4 配置测试 412
确认一个成功的配置用烟测试 412
确认应用程序功能性用领受测试 415
15.5 配置当做建造渠道 的一部份 416
自动机械配置测试环境 417
配置测试 : 要求的配置对 UAT 417
而且生产环境 418
15.6 摘要 419
附录 A 驾驶指令行 421
附录 B 很帅的为 Gradle 使用者 429
索引 440