Gradle用戶指南
版權(quán)所有?2007-2017 Hans Dockter恶导,Adam Murdoch
本文檔的副本可以為您自己使用并分發(fā)給其他人战转,前提是您不收取這些副本的任何費(fèi)用靖苇,并進(jìn)一步規(guī)定每份副本均包含此版權(quán)聲明嘶朱,無(wú)論是以印刷版還是電子版分發(fā).
由于簡(jiǎn)書書寫不方便溯捆,將其余文檔更新至github上了
目錄
I. 關(guān)于Gradle
II. 使用現(xiàn)行版本
?3. 安裝Gradle
?4. 使用Gradle命令行
?5. Gradle控制臺(tái)
?6. Gradle包裝器
?7. Gradle守護(hù)進(jìn)程
?8. 依賴管理基礎(chǔ)
?9. 介紹多項(xiàng)目構(gòu)建
?10. 連續(xù)構(gòu)建
?11. 復(fù)合構(gòu)建
?12. 構(gòu)建環(huán)境
?13. 故障排除
?14. 使用Tooling API嵌入Gradle
?15. 構(gòu)建緩存
III.編寫Gradle構(gòu)建腳本
?16. 構(gòu)建腳本基礎(chǔ)
?17. 構(gòu)建Init插件
?18. 編寫生成腳本
?19. 關(guān)于任務(wù)的更多信息
?20. 使用文件
?21. 使用Gradle中的Ant
?22. 構(gòu)建生命周期
?23. 包裝插件
?24. 記錄
?25. 依賴管理
?26. 多項(xiàng)目構(gòu)建
?27. Gradle插件
?28. 標(biāo)準(zhǔn)的Gradle插件
?29. 項(xiàng)目報(bào)告插件
?30. 生成儀表板插件
?31. 比較構(gòu)建
?32. 發(fā)布工件
?33. Maven插件
?34. 簽名插件
?35. 常春藤出版(新)
?36. Maven Publishing(新)
?37. 分配插件
?38. 宣傳插件
?39. 生成公告插件
IV.擴(kuò)展構(gòu)建
?40. 編寫自定義任務(wù)類
?41. 編寫自定義插件
?42. Java Gradle插件開發(fā)插件
?43. 組織構(gòu)建邏輯
?44. Lazy 的配置
?45. 初始化腳本
?46. Gradle TestKit
V.構(gòu)建JVM項(xiàng)目
Java快速入門
?48. Java插件
?49. Java庫(kù)插件
?50. Web應(yīng)用程序快速入門
?51. War 插件
?52. Ear 插件
?53. Jetty 插件
?54. 應(yīng)用程序插件
?55. Java 庫(kù)分發(fā)插件
?56. Groovy 快速入門
?57. Groovy 插件
?58. Scala 插件
?59. ANTLR 插件
?60. Checkstyle 插件
?61. CodeNarc 插件
?62. FindBugs 插件
?63. JDepend插件
?64. PMD插件
?65. JaCoCo插件
?66. OSGi插件
?67. Eclipse插件
?68. IDEA插件
VI.軟件模型
?69.基于規(guī)則的模型配置
?70.軟件模型概念
?71.在插件中實(shí)現(xiàn)模型規(guī)則
?72.構(gòu)建Java庫(kù)
?73.構(gòu)建Play應(yīng)用程序
?74.構(gòu)建本地軟件
?75.擴(kuò)展軟件模型
七.附錄
?A. Gradle樣本
?B.潛在的陷阱
?C.功能生命周期
?D. Gradle命令行
?E.文件許可證
例子列表
4.1 執(zhí)行多個(gè)任務(wù)
4.2 排除任務(wù)
4.3 縮寫的任務(wù)名稱
4.4 縮寫駱駝案例任務(wù)名稱
4.5 使用構(gòu)建文件選擇項(xiàng)目
4.6 使用項(xiàng)目目錄選擇項(xiàng)目
4.7 強(qiáng)制任務(wù)運(yùn)行
4.8 獲取有關(guān)項(xiàng)目的信息
4.9 提供一個(gè)項(xiàng)目的描述
4.10 獲取有關(guān)任務(wù)的信息
4.11 更改任務(wù)報(bào)告的內(nèi)容
4.12 獲取更多關(guān)于任務(wù)的信息
4.13 獲得詳細(xì)的幫助任務(wù)
4.14 獲取有關(guān)依賴關(guān)系的信息
4.15 通過(guò)配置過(guò)濾依賴關(guān)系報(bào)告
4.16 深入了解特定的依賴關(guān)系
4.17 有關(guān)屬性的信息
6.1 運(yùn)行包裝任務(wù)
6.2 包裝任務(wù)
6.3 包裝器生成的文件
6.4 使用系統(tǒng)屬性指定HTTP基本身份驗(yàn)證憑據(jù)
6.5 在中指定HTTP基本身份驗(yàn)證憑證distributionUrl
6.6 配置SHA-256校驗(yàn)和驗(yàn)證
8.1 聲明依賴關(guān)系
8.2 定義一個(gè)外部依賴
8.3 外部依賴的快捷方式定義
8.4 使用Maven中央資料庫(kù)
8.5 使用JCenter存儲(chǔ)庫(kù)
8.6 遠(yuǎn)程Maven倉(cāng)庫(kù)的使用
8.7 遠(yuǎn)程Ivy目錄的用法
8.8 本地Ivy目錄的用法
8.9 發(fā)布到常春藤資源庫(kù)
8.10 發(fā)布到Maven倉(cāng)庫(kù)
9.1 列出構(gòu)建中的項(xiàng)目
11.1 我的應(yīng)用程序的依賴關(guān)系
11.2 聲明一個(gè)命令行組合
11.3 聲明一個(gè)單獨(dú)的組合
11.4 根據(jù)包含的構(gòu)建任務(wù)
11.5 建立不聲明組屬性
11.6 為包含的構(gòu)建聲明替換
11.7 取決于包含的構(gòu)建中的單個(gè)任務(wù)
11.8 取決于所有包含的構(gòu)建中的路徑任務(wù)
12.1 使用gradle.properties文件設(shè)置屬性
12.2 配置HTTP代理
12.3 配置HTTPS代理
14.1 使用工具API
15.1 配置本地緩存
15.2 從HttpBuildCache拉
15.3 配置遠(yuǎn)程HTTP緩存
15.4 為HttpBuildCache允許不受信任的SSL證書
15.5 CI推薦用例的建議設(shè)置
15.6 一致的buildSrc和主版本的設(shè)置
15.7 初始化腳本來(lái)配置構(gòu)建緩存
16.1 你的第一個(gè)構(gòu)建腳本
16.2 執(zhí)行構(gòu)建腳本
16.3 任務(wù)定義快捷方式
16.4 在Gradle的任務(wù)中使用Groovy
16.5 在Gradle的任務(wù)中使用Groovy
16.6 取決于其他任務(wù)的任務(wù)宣言
16.7 懶惰取決于 - 其他任務(wù)不存在(還)
16.8 動(dòng)態(tài)創(chuàng)建任務(wù)
16.9 通過(guò)API訪問(wèn)任務(wù) - 添加依賴項(xiàng)
16.10 通過(guò)API訪問(wèn)任務(wù) - 添加行為
16.11 作為構(gòu)建腳本的屬性訪問(wèn)任務(wù)
16.12 為任務(wù)添加額外的屬性
16.13 使用AntBuilder執(zhí)行ant.loadfile目標(biāo)
16.14 使用方法來(lái)組織你的構(gòu)建邏輯
16.15 定義一個(gè)默認(rèn)的任務(wù)
16.16 不同的結(jié)果取決于選擇的任務(wù)
18.1 訪問(wèn)Project對(duì)象的屬性
18.2 使用局部變量
18.3 使用額外的屬性
18.4 配置任意對(duì)象
18.5 使用腳本配置任意對(duì)象
18.6 Groovy JDK方法
18.7 物業(yè)訪問(wèn)者
18.8 沒有括號(hào)的方法調(diào)用
18.9 列表和地圖文字
18.10 作為方法參數(shù)關(guān)閉
18.11 關(guān)閉代表
19.1 定義任務(wù)
19.2 定義任務(wù) - 使用字符串作為任務(wù)名稱
19.3 使用替代語(yǔ)法定義任務(wù)
19.4 作為屬性訪問(wèn)任務(wù)
19.5 通過(guò)任務(wù)收集訪問(wèn)任務(wù)
19.6 通過(guò)路徑訪問(wèn)任務(wù)
19.7 創(chuàng)建一個(gè)復(fù)制任務(wù)
19.8 配置一個(gè)任務(wù) - 不同的方式
19.9 配置一個(gè)任務(wù) - 關(guān)閉
19.10 用閉包定義一個(gè)任務(wù)
19.11 從另一個(gè)項(xiàng)目添加依賴任務(wù)
19.12 使用任務(wù)對(duì)象添加依賴項(xiàng)
19.13 使用閉包添加依賴關(guān)系
19.14 添加'必須在任務(wù)排序后運(yùn)行'
19.15 添加'應(yīng)該運(yùn)行'任務(wù)排序
19.16 任務(wù)排序并不意味著任務(wù)執(zhí)行
19.17 如果引入了一個(gè)訂購(gòu)周期配并,則應(yīng)該在任務(wù)排序之后運(yùn)行'A'
19.18 將描述添加到任務(wù)
19.19 覆蓋任務(wù)
19.20 使用謂詞跳過(guò)任務(wù)
19.21 用StopExecutionException跳過(guò)任務(wù)
19.22 啟用和禁用任務(wù)
19.23 自定義任務(wù)類
19.24 臨時(shí)任務(wù)
19.25 宣布可銷毀的臨時(shí)任務(wù)
19.26 使用自定義任務(wù)類型的運(yùn)行時(shí)API
19.27 通過(guò)運(yùn)行時(shí)API使用skipWhenEmpty()
19.28 通過(guò)任務(wù)輸出推斷任務(wù)依賴關(guān)系
19.29 通過(guò)任務(wù)參數(shù)推斷任務(wù)依賴關(guān)系
19.30 聲明一個(gè)方法來(lái)添加任務(wù)輸入
19.31 聲明一個(gè)方法來(lái)添加一個(gè)任務(wù)作為輸入
19.32 嘗試設(shè)置推斷的任務(wù)依賴關(guān)系失敗
19.33 在輸出目錄和輸入文件之間建立推斷的任務(wù)依賴關(guān)系
19.34 使用文件()設(shè)置推斷的任務(wù)依賴關(guān)系
19.35 使用builtBy()設(shè)置推斷的任務(wù)依賴關(guān)系
19.36 忽略最新的檢查
19.37 運(yùn)行時(shí)類路徑規(guī)范化
19.38 任務(wù)規(guī)則
19.39 依賴基于規(guī)則的任務(wù)
19.40 添加任務(wù)終結(jié)器
19.41 任務(wù)終結(jié)器失敗的任務(wù)
20.1 查找文件
20.2 創(chuàng)建一個(gè)文件集合
20.3 使用文件集合
20.4 實(shí)現(xiàn)一個(gè)文件集合
20.5 創(chuàng)建一個(gè)文件樹
20.6 使用文件樹
20.7 使用檔案作為文件樹
20.8 指定一組文件
20.9 使用復(fù)制任務(wù)復(fù)制文件
20.10 指定復(fù)制任務(wù)源文件和目標(biāo)目錄
20.11 選擇要復(fù)制的文件
20.12 使用copy()方法復(fù)制文件而不進(jìn)行最新檢查
20.13 使用最新檢查的copy()方法復(fù)制文件
20.14 重命名文件,因?yàn)樗鼈儽粡?fù)制
20.15 在復(fù)制文件時(shí)過(guò)濾文件
20.16 嵌套的復(fù)制規(guī)格
20.17 使用Sync任務(wù)來(lái)復(fù)制依賴關(guān)系
20.18 創(chuàng)建一個(gè)ZIP存檔
20.19 創(chuàng)建ZIP壓縮文件
20.20 歸檔任務(wù)的配置 - 自定義歸檔名稱
20.21 歸檔任務(wù)的配置 - 附錄和分類器
20.22 激活可復(fù)制的檔案
21.1 使用Ant任務(wù)
21.2 將嵌套文本傳遞給Ant任務(wù)
21.3 將嵌套元素傳遞給Ant任務(wù)
21.4 使用Ant類型
21.5 使用自定義Ant任務(wù)
21.6 聲明自定義Ant任務(wù)的類路徑
21.7 一起使用自定義Ant任務(wù)和依賴項(xiàng)管理
21.8 導(dǎo)入Ant構(gòu)建
21.9 依賴Ant目標(biāo)的任務(wù)
21.10 將行為添加到Ant目標(biāo)
21.11 依賴于Gradle任務(wù)的Ant目標(biāo)
21.12 重命名導(dǎo)入的Ant目標(biāo)
21.13 設(shè)置一個(gè)Ant屬性
21.14 獲取Ant屬性
21.15 設(shè)置一個(gè)Ant引用
21.16 獲取Ant參考
21.17 微調(diào)Ant記錄
22.1 單個(gè)項(xiàng)目構(gòu)建
22.2 分層布局
22.3 平面布局
22.4 項(xiàng)目樹元素的修改
22.5 將測(cè)試任務(wù)添加到具有特定屬性集的每個(gè)項(xiàng)目
22.6 通知
22.7 將某些屬性設(shè)置為所有任務(wù)
22.8 記錄每個(gè)任務(wù)執(zhí)行的開始和結(jié)束
24.1 使用stdout寫入日志消息
24.2 編寫自己的日志消息
24.3 使用SLF4J寫入日志消息
24.4 配置標(biāo)準(zhǔn)輸出捕獲
24.5 為任務(wù)配置標(biāo)準(zhǔn)輸出捕獲
24.6 自定義什么Gradle日志
25.1 定義一個(gè)配置
25.2 訪問(wèn)配置
25.3 配置配置
25.4 模塊依賴關(guān)系
25.5 神器只有符號(hào)
25.6 依靠分類器
25.7 迭代配置
25.8 客戶端模塊依賴關(guān)系 - 傳遞依賴關(guān)系
25.9 項(xiàng)目依賴關(guān)系
25.10 文件依賴關(guān)系
25.11 生成的文件依賴關(guān)系
25.12 Gradle API依賴關(guān)系
25.13 Gradle的Groovy依賴
25.14 排除傳遞依賴
25.15 依賴關(guān)系的可選屬性
25.16 集合和依賴的數(shù)組
25.17 依賴配置
25.18 項(xiàng)目的依賴配置
25.19 Configuration.copy
25.20 訪問(wèn)聲明的依賴關(guān)系
25.21 Configuration.files
25.22 配置文件
25.23 Configuration.copy
25.24 Configuration.copy與Configuration.files
25.25 添加中央Maven倉(cāng)庫(kù)
25.26 添加Bintray的JCenter Maven倉(cāng)庫(kù)
25.27 通過(guò)HTTP使用Bintrays的JCenter
25.28 添加Google Maven倉(cāng)庫(kù)
25.29 添加本地Maven緩存作為存儲(chǔ)庫(kù)
25.30 添加自定義的Maven倉(cāng)庫(kù)
25.31 為JAR文件添加額外的Maven存儲(chǔ)庫(kù)
25.32 訪問(wèn)密碼保護(hù)的Maven倉(cāng)庫(kù)
25.33 平面庫(kù)解析器
25.34 常春藤資料庫(kù)
25.35 具有命名布局的常青藤資源庫(kù)
25.36 常春藤庫(kù)與模式布局
25.37 常春藤資源庫(kù)與多個(gè)自定義模式
25.38 與Maven兼容布局的常春藤資源庫(kù)
25.39 常春藤資料庫(kù)
25.40 聲明一個(gè)Maven和Ivy倉(cāng)庫(kù)
25.41 向Maven和Ivy存儲(chǔ)庫(kù)提供憑據(jù)
25.42 聲明一個(gè)S3支持的Maven和Ivy倉(cāng)庫(kù)
25.43 使用IAM聲明S3支持的Maven和Ivy倉(cāng)庫(kù)
25.44 使用默認(rèn)應(yīng)用程序憑據(jù)聲明Google云端存儲(chǔ)支持Maven和Ivy存儲(chǔ)庫(kù)
25.45 將存儲(chǔ)庫(kù)配置為僅使用摘要式身份驗(yàn)證
25.46 配置存儲(chǔ)庫(kù)以使用搶先式身份驗(yàn)證
25.47 訪問(wèn)存儲(chǔ)庫(kù)
25.48 存儲(chǔ)庫(kù)的配置
25.49 定義存儲(chǔ)庫(kù)的定義
25.50 強(qiáng)制一組庫(kù)的一致版本
25.51 使用自定義的版本控制方案
25.52 用替換品列入黑名單
25.53 在分辨率更改依賴組和/或名稱
25.54 用一個(gè)項(xiàng)目替代一個(gè)模塊
25.55 用一個(gè)模塊替代一個(gè)項(xiàng)目
25.56 有條件地取代依賴關(guān)系
25.57 指定配置的默認(rèn)依賴關(guān)系
25.58 啟用動(dòng)態(tài)解析模式
25.59 “最新”版本選擇器
25.60 自定義狀態(tài)方案
25.61 按模塊自定義狀態(tài)方案
25.62 常春藤組件元數(shù)據(jù)規(guī)則
25.63 規(guī)則源組件元數(shù)據(jù)規(guī)則
25.64 組件選擇規(guī)則
25.65 具有模塊目標(biāo)的組件選擇規(guī)則
25.66 元數(shù)據(jù)的組件選擇規(guī)則
25.67 使用規(guī)則源對(duì)象的組件選擇規(guī)則
25.68 聲明模塊更換
25.69 動(dòng)態(tài)版本緩存控制
25.70 更改模塊緩存控制
26.1 多項(xiàng)目樹 - 水和藍(lán)鯨項(xiàng)目
26.2 建立水(母)項(xiàng)目的腳本
26.3 多項(xiàng)目樹 - 水,藍(lán)鯨和磷蝦項(xiàng)目
26.4 水項(xiàng)目建設(shè)腳本
26.5 定義所有項(xiàng)目和子項(xiàng)目的共同行為
26.6 定義特定項(xiàng)目的特定行為
26.7 定義項(xiàng)目磷蝦的具體行為
26.8 向一些項(xiàng)目添加自定義行為(按項(xiàng)目名稱過(guò)濾)
26.9 將自定義行為添加到某些項(xiàng)目(由項(xiàng)目屬性過(guò)濾)
26.10 從子項(xiàng)目運(yùn)行生成
26.11 評(píng)估和執(zhí)行項(xiàng)目
26.12 評(píng)估和執(zhí)行項(xiàng)目
26.13 通過(guò)絕對(duì)路徑運(yùn)行任務(wù)
26.14 依賴和執(zhí)行順序
26.15 依賴和執(zhí)行順序
26.16 依賴和執(zhí)行順序
26.17 聲明依賴關(guān)系
26.18 聲明依賴關(guān)系
26.19 跨項(xiàng)目任務(wù)依賴關(guān)系
26.20 配置時(shí)間依賴關(guān)系
26.21 配置時(shí)間依賴關(guān)系 - evaluationDependsOn
26.22 配置時(shí)間依賴關(guān)系
26.23 相關(guān)性 - 真實(shí)生活的例子 - 交叉項(xiàng)目配置
26.24 項(xiàng)目庫(kù)依賴關(guān)系
26.25 項(xiàng)目庫(kù)依賴關(guān)系
26.26 細(xì)粒度地控制依賴關(guān)系
26.27 建立和測(cè)試單個(gè)項(xiàng)目
26.28 部分構(gòu)建和測(cè)試單個(gè)項(xiàng)目
26.29 建立和測(cè)試取決于項(xiàng)目
26.30 建立和測(cè)試相關(guān)項(xiàng)目
27.1 應(yīng)用腳本插件
27.2 應(yīng)用核心插件
27.3 應(yīng)用社區(qū)插件
27.4 僅對(duì)某些子項(xiàng)目應(yīng)用插件.
27.5 使用自定義插件存儲(chǔ)庫(kù)中的插件.
27.6 插件分辨率策略.
27.7 完成插件發(fā)布示例
27.8 應(yīng)用二進(jìn)制插件
27.9 按類型應(yīng)用二進(jìn)制插件
27.10 應(yīng)用一個(gè)插件與buildscript塊
30.1 使用生成儀表板插件
32.1 使用歸檔任務(wù)定義工件
32.2 使用文件定義工件
32.3 自定義工件
32.4 用于使用文件定義工件的映射語(yǔ)法
32.5 上傳任務(wù)的配置
33.1 使用Maven插件
33.2 創(chuàng)建一個(gè)獨(dú)立的pom.
33.3 將文件上傳到遠(yuǎn)程Maven存儲(chǔ)庫(kù)
33.4 通過(guò)SSH上傳文件
33.5 pom的定制
33.6 pom的生成器風(fēng)格定制
33.7 修改自動(dòng)生成的內(nèi)容
33.8 Maven安裝程序的自定義
33.9 生成多個(gè)poms
33.10 訪問(wèn)映射配置
34.1 使用簽名插件
34.2 簽署配置
34.3 簽署配置輸出
34.4 簽署一項(xiàng)任務(wù)
34.5 簽署任務(wù)輸出
34.6 有條件簽名
34.7 簽署POM進(jìn)行部署
35.1 應(yīng)用“ivy-publish”插件
35.2 發(fā)布一個(gè)Java模塊給Ivy
35.3 向艾薇發(fā)布更多的神器
35.4 定制發(fā)布標(biāo)識(shí)
35.5 定制模塊描述符文件
35.6 從單個(gè)項(xiàng)目發(fā)布多個(gè)模塊
35.7 聲明存儲(chǔ)庫(kù)發(fā)布到
35.8 選擇要發(fā)布的特定出版物
35.9 通過(guò)“發(fā)布”生命周期任務(wù)發(fā)布所有發(fā)布
35.10 生成常青藤模塊描述符文件
35.11 發(fā)布一個(gè)Java模塊
35.12 生成ivy.xml的例子
36.1 應(yīng)用“maven-publish”插件
36.2 為Java組件添加一個(gè)MavenPublication
36.3 將其他工件添加到MavenPublication中
36.4 定制發(fā)布標(biāo)識(shí)
36.5 修改POM文件
36.6 從單個(gè)項(xiàng)目發(fā)布多個(gè)模塊
36.7 聲明存儲(chǔ)庫(kù)發(fā)布到
36.8 將項(xiàng)目發(fā)布到Maven存儲(chǔ)庫(kù)
36.9 將項(xiàng)目發(fā)布到Maven本地存儲(chǔ)庫(kù)
36.10 生成POM文件而不發(fā)布
37.1 使用分配插件
37.2 添加額外的分配
37.3 配置主分配
37.4 發(fā)布主要分布
38.1 使用通告插件
38.2 配置通告插件
38.3 使用通告插件
39.1 使用構(gòu)建公告插件
39.2 從初始化腳本使用構(gòu)建公告插件
40.1 定義一個(gè)自定義的任務(wù)
40.2 你好世界任務(wù)
40.3 一個(gè)可定制的hello世界任務(wù)
40.4 構(gòu)建自定義任務(wù)
40.5 自定義任務(wù)
40.6 在另一個(gè)項(xiàng)目中使用自定義任務(wù)
40.7 測(cè)試一個(gè)自定義任務(wù)
40.8 定義增量任務(wù)操作
40.9 第一次運(yùn)行增量任務(wù)
40.10 以不變的輸入運(yùn)行增量任務(wù)
40.11 用更新的輸入文件運(yùn)行增量任務(wù)
40.12 運(yùn)行刪除輸入文件的增量任務(wù)
40.13 運(yùn)行刪除了輸出文件的增量任務(wù)
40.14 運(yùn)行更改的輸入屬性的增量任務(wù)
40.15 創(chuàng)建一個(gè)工作單位的實(shí)施
40.16 提交一個(gè)工作單元執(zhí)行
40.17 等待異步工作完成
40.18 提交工作項(xiàng)目以在工作守護(hù)程序中運(yùn)行
41.1 自定義插件
41.2 自定義插件擴(kuò)展
41.3 具有配置關(guān)閉的自定義插件
41.4 懶惰地評(píng)估文件屬性
41.5 擴(kuò)展屬性映射到任務(wù)屬性
41.6 構(gòu)建自定義插件
41.7 為自定義插件配線
41.8 在另一個(gè)項(xiàng)目中使用自定義插件
41.9 應(yīng)用社區(qū)插件與插件DSL
41.10 測(cè)試一個(gè)自定義的插件
41.11 使用Java Gradle插件開發(fā)插件
41.12 嵌套的DSL元素
41.13 管理對(duì)象的集合
42.1 使用Java Gradle插件開發(fā)插件
42.2 使用gradlePlugin {}塊.
43.1 使用繼承的屬性和方法
43.2 使用注入的屬性和方法
43.3 使用外部構(gòu)建腳本配置項(xiàng)目
43.4 自定義buildSrc構(gòu)建腳本
43.5 將子項(xiàng)目添加到root buildSrc項(xiàng)目
43.6 從構(gòu)建中運(yùn)行另一個(gè)構(gòu)建
43.7 為構(gòu)建腳本聲明外部依賴關(guān)系
43.8 具有外部依賴性的構(gòu)建腳本
43.9 Ant可選的依賴關(guān)系
44.1 使用只讀和可配置的屬性
44.2 使用文件和目錄屬性
44.3 隱式任務(wù)依賴關(guān)系
44.4 列出屬性
45.1 在項(xiàng)目評(píng)估之前使用init腳本執(zhí)行額外的配置
45.2 聲明init腳本的外部依賴關(guān)系
45.3 具有外部依賴性的初始化腳本
45.4 在init腳本中使用插件
46.1 聲明TestKit依賴關(guān)系
46.2 聲明JUnit的依賴
46.3 在JUnit中使用GradleRunner
46.4 使用GradleRunner和Spock
46.5 使測(cè)試中的代碼可用于測(cè)試
46.6 將測(cè)試類中的代碼注入測(cè)試版本
46.7 將測(cè)試類中的代碼注入到2.8之前的Gradle版本的測(cè)試版本中
46.8 使用Java Gradle Development插件生成插件元數(shù)據(jù)
46.9 自動(dòng)將測(cè)試類下的代碼注入測(cè)試版本
46.10 重新配置Java Gradle Development插件的類路徑生成約定
46.11 為測(cè)試執(zhí)行指定一個(gè)Gradle版本
46.12 測(cè)試可緩存的任務(wù)
47.1 使用Java插件
47.2 構(gòu)建一個(gè)Java項(xiàng)目
47.3 添加Maven倉(cāng)庫(kù)
47.4 添加依賴關(guān)系
47.5 MANIFEST.MF的自定義
47.6 添加一個(gè)測(cè)試系統(tǒng)屬性
47.7 發(fā)布JAR文件
47.8 Eclipse插件
47.9 Java示例 - 完整的構(gòu)建文件
47.10 多項(xiàng)目構(gòu)建 - 分層布局
47.11 多項(xiàng)目構(gòu)建 - settings.gradle文件
47.12 多項(xiàng)目構(gòu)建 - 通用配置
47.13 多項(xiàng)目構(gòu)建 - 項(xiàng)目之間的依賴關(guān)系
47.14 多項(xiàng)目構(gòu)建 - 分發(fā)文件
48.1 使用Java插件
48.2 自定義Java源代碼布局
48.3 訪問(wèn)源集
48.4 配置源集的源目錄
48.5 定義一個(gè)源集
48.6 定義源集依賴關(guān)系
48.7 編譯源集
48.8 為源集組裝一個(gè)JAR
48.9 為源集合生成Javadoc
48.10 在源集中運(yùn)行測(cè)試
48.11 聲明注釋處理器
48.12 在構(gòu)建腳本中篩選測(cè)試
48.13 JUnit類別
48.14 分組TestNG測(cè)試
48.15 保持TestNG測(cè)試的順序
48.16 按實(shí)例分組TestNG測(cè)試
48.17 為子項(xiàng)目創(chuàng)建單元測(cè)試報(bào)告
48.18 MANIFEST.MF的自定義
48.19 創(chuàng)建一個(gè)清單對(duì)象.
48.20 將MANIFEST.MF分別存檔
48.21 配置Java 6版本
49.1 使用Java庫(kù)插件
49.2 聲明API和實(shí)現(xiàn)依賴關(guān)系
49.3 區(qū)分API和實(shí)現(xiàn)
49.4 聲明API和實(shí)現(xiàn)依賴關(guān)系
49.5 配置Groovy插件以使用Java庫(kù)
50.1 戰(zhàn)爭(zhēng)插件
50.2 使用Gretty插件運(yùn)行Web應(yīng)用程序
51.1 使用戰(zhàn)爭(zhēng)插件
51.2 戰(zhàn)爭(zhēng)插件的定制
52.1 使用Ear插件
52.2 耳塞的定制
54.1 使用應(yīng)用程序插件
54.2 配置應(yīng)用程序的主類
54.3 配置默認(rèn)的JVM設(shè)置
54.4 在應(yīng)用程序分發(fā)中包含來(lái)自其他任務(wù)的輸出
54.5 自動(dòng)創(chuàng)建分發(fā)文件
55.1 使用Java庫(kù)分發(fā)插件
55.2 配置分發(fā)名稱
55.3 在分發(fā)中包含文件
56.1 Groovy插件
56.2 依賴于Groovy
56.3 Groovy示例 - 完整的構(gòu)建文件
57.1 使用Groovy插件
57.2 自定義Groovy源代碼布局
57.3 Groovy依賴的配置
57.4 配置Groovy測(cè)試依賴
57.5 捆綁的Groovy依賴的配置
57.6 Groovy文件依賴關(guān)系的配置
57.7 為Groovy配置Java 6構(gòu)建
58.1 使用Scala插件
58.2 自定義Scala源代碼布局
58.3 為生產(chǎn)代碼聲明一個(gè)Scala依賴項(xiàng)
58.4 為測(cè)試代碼聲明一個(gè)Scala依賴項(xiàng)
58.5 聲明要使用的Zinc編譯器的版本
58.6 為所有配置強(qiáng)制使用scala-library依賴項(xiàng)
58.7 強(qiáng)制使用鋅配置的scala-library依賴項(xiàng)
58.8 調(diào)整內(nèi)存設(shè)置
58.9 強(qiáng)制所有代碼被編譯
58.10 為Scala配置Java 6 build
58.11 明確指定目標(biāo)IntelliJ IDEA版本
59.1 使用ANTLR插件
59.2 聲明ANTLR版本
59.3 為ANTLR設(shè)置自定義最大堆大小和額外參數(shù)
60.1 使用Checkstyle插件
60.2 使用config_loc屬性
60.3 自定義HTML報(bào)告
61.1 使用CodeNarc插件
62.1 使用FindBugs插件
62.2 自定義HTML報(bào)告
63.1 使用JDepend插件
64.1 使用PMD插件
65.1 應(yīng)用JaCoCo插件
65.2 配置JaCoCo插件設(shè)置
65.3 配置測(cè)試任務(wù)
65.4 配置違規(guī)規(guī)則
65.5 配置測(cè)試任務(wù)
65.6 使用應(yīng)用程序插件來(lái)生成代碼覆蓋率數(shù)據(jù)
65.7 由applicationCodeCoverageReport生成的覆蓋率報(bào)告
66.1 使用OSGi插件
66.2 OSGi MANIFEST.MF文件的配置
67.1 使用Eclipse插件
67.2 使用Eclipse WTP插件
67.3 部分覆蓋類路徑
67.4 部分覆蓋項(xiàng)目
67.5 導(dǎo)出依賴關(guān)系
67.6 定制XML
68.1 使用IDEA插件
68.2 部分重寫模塊
68.3 部分重寫項(xiàng)目
68.4 導(dǎo)出依賴關(guān)系
68.5 定制XML
69.1 應(yīng)用規(guī)則源插件
69.2 模型創(chuàng)建規(guī)則
69.3 模型變異規(guī)則
69.4 創(chuàng)造一個(gè)任務(wù)
69.5 一個(gè)托管類型
69.6 一個(gè)String屬性
69.7 一個(gè)File屬性
69.8 一個(gè)Long屬性
69.9 一個(gè)布爾屬性
69.10 一個(gè)int屬性
69.11 一個(gè)托管的財(cái)產(chǎn)
69.12 一個(gè)枚舉類型的屬性
69.13 一個(gè)托管集
69.14 強(qiáng)烈建模源集
69.15 將規(guī)則應(yīng)用于范圍內(nèi)的每個(gè)元素的DSL示例
69.16 DSL配置規(guī)則
69.17 需要時(shí)運(yùn)行配置
69.18 不需要時(shí)配置不運(yùn)行
69.19 DSL創(chuàng)建規(guī)則
69.20 DSL創(chuàng)建規(guī)則沒有初始化
69.21 配置之前進(jìn)行初始化
69.22 嵌套的DSL創(chuàng)建規(guī)則
69.23 嵌套的DSL配置規(guī)則
69.24 地圖中每個(gè)元素的DSL配置規(guī)則
69.25 嵌套的DSL屬性配置
69.26 顯示類型轉(zhuǎn)換的DSL示例
69.27 使用輸入的DSL規(guī)則
69.28 模型任務(wù)輸出
72.1 使用Java軟件插件
72.2 創(chuàng)建一個(gè)Java庫(kù)
72.3 配置源集
72.4 創(chuàng)建一個(gè)新的源集
72.5 組件報(bào)告
72.6 聲明依賴到一個(gè)庫(kù)
72.7 用一個(gè)明確的庫(kù)聲明一個(gè)依賴到一個(gè)項(xiàng)目
72.8 用隱式庫(kù)聲明一個(gè)依賴到一個(gè)項(xiàng)目
72.9 聲明一個(gè)依賴到一個(gè)發(fā)布到Maven倉(cāng)庫(kù)的庫(kù)
72.10 使用簡(jiǎn)寫符號(hào)聲明模塊依賴關(guān)系
72.11 配置存儲(chǔ)庫(kù)以進(jìn)行依賴關(guān)系解析
72.12 指定api包
72.13 指定api依賴關(guān)系
72.14 主要來(lái)源
72.15 客戶端組件
72.16 破壞的客戶端組件
72.17 重新編譯客戶端
72.18 宣布目標(biāo)平臺(tái)
72.19 聲明二進(jìn)制特定的來(lái)源
72.20 宣布目標(biāo)平臺(tái)
72.21 使用JUnit插件
72.22 執(zhí)行測(cè)試套件
72.23 執(zhí)行測(cè)試套件
72.24 聲明一個(gè)被測(cè)組件
72.25 聲明本地Java安裝
73.1 使用Play插件
73.2 組件報(bào)告
73.3 選擇Play框架的一個(gè)版本
73.4 將依賴關(guān)系添加到Play應(yīng)用程序
73.5 Play 2.6項(xiàng)目
73.6 在Play 2.6項(xiàng)目中添加Guice依賴項(xiàng)
73.7 將額外的源集添加到Play應(yīng)用程序
73.8 配置Scala編譯器選項(xiàng)
73.9 配置路由樣式
73.10 配置自定義資產(chǎn)管道
73.11 配置Play子項(xiàng)目的依賴關(guān)系
73.12 將額外的文件添加到Play應(yīng)用程序分發(fā)
73.13 同時(shí)應(yīng)用Play和IDEA插件
74.1 定義一個(gè)庫(kù)組件
74.2 定義可執(zhí)行組件
74.3 示例構(gòu)建
74.4 相關(guān)組件報(bào)告
74.5 相關(guān)組件報(bào)告
74.6 依賴于操作員組件的組件報(bào)告
74.7 依賴于操作員組件的組件報(bào)告观腊,包括測(cè)試套件
74.8 組裝依賴于運(yùn)算符組件的傳遞/靜態(tài)二進(jìn)制文件的組件
74.9 構(gòu)建依賴于運(yùn)算符組件的傳遞/靜態(tài)二進(jìn)制文件的組件
74.10 添加一個(gè)自定義檢查任務(wù)
74.11 運(yùn)行檢查給定的二進(jìn)制文件
74.12 組件報(bào)告
74.13 'cpp'插件
74.14 C ++源碼集
74.15 'c'插件
74.16 C源集
74.17 “匯編器”插件
74.18 'objective-c'插件
74.19 'objective-cpp'插件
74.20 適用于所有二進(jìn)制文件的設(shè)置
74.21 適用于所有共享庫(kù)的設(shè)置
74.22 適用于為“主要”可執(zhí)行組件生成的所有二進(jìn)制文件的設(shè)置
74.23 僅適用于為“主”庫(kù)組件生成的共享庫(kù)的設(shè)置
74.24 “Windows資源”插件
74.25 配置Windows資源的位置
74.26 建立一個(gè)資源專用的DLL
74.27 為源集提供一個(gè)庫(kù)依賴關(guān)系
74.28 為二進(jìn)制提供一個(gè)庫(kù)依賴
74.29 聲明項(xiàng)目依賴關(guān)系
74.30 創(chuàng)建一個(gè)預(yù)編譯的頭文件
74.31 在源文件中包含預(yù)編譯的頭文件
74.32 配置預(yù)編譯頭
74.33 定義構(gòu)建類型
74.34 配置調(diào)試二進(jìn)制文件
74.35 定義平臺(tái)
74.36 定義味道
74.37 在特定平臺(tái)上定位組件
74.38 建立所有可能的變體
74.39 定義工具鏈
74.40 重新配置工具參數(shù)
74.41 定義目標(biāo)平臺(tái)
74.42 注冊(cè)CUnit測(cè)試
74.43 運(yùn)行CUnit測(cè)試
74.44 注冊(cè)GoogleTest測(cè)試
75.1 一個(gè)使用自定義軟件模型的例子
75.2 聲明一個(gè)自定義組件
75.3 注冊(cè)一個(gè)自定義組件
75.4 聲明一個(gè)自定義二進(jìn)制文件
75.5 注冊(cè)自定義二進(jìn)制文件
75.6 聲明一個(gè)自定義源集
75.7 注冊(cè)一個(gè)自定義源集
75.8 生成文檔二進(jìn)制文件
75.9 為文本源集合生成任務(wù)
75.10 注冊(cè)一個(gè)自定義源集
75.11 一個(gè)使用自定義軟件模型的例子
75.12 組件報(bào)告
75.13 公共類型和內(nèi)部視圖聲明
75.14 類型注冊(cè)
75.15 公眾和內(nèi)部數(shù)據(jù)突變
75.16 示例構(gòu)建腳本和模型報(bào)告輸出
B.1 變量范圍:本地和腳本廣泛
B.2 獨(dú)特的配置和執(zhí)行階段