gradle創建歸檔文件
實例
task compressMapping(type: Zip) {
from "$buildDir/outputs/mapping"
into 'mapping'
baseName = 'mapping'
destinationDir file("$buildDir/outputs")
doLast {
delete "$buildDir/outputs/mapping"
}
}
上面代碼把 mapping目錄 壓縮 爲mapping.zip 並保存在 mapping目錄所在目錄下,最後刪除mapping目錄
歸檔任務與 Copy 任務的工作方式一樣,並且實現了相同的 CopySpec 接口。像使用 Copy 任務一樣,你需要使用 from() 的方法指定輸入的文件,並可以選擇是否通過 into() 方法指定最終在存檔中的位置。您可以通過一個複製規範來篩選文件的內容、 重命名文件和進行其他你可以做的事情。
Archive tasks - naming properties
屬性名稱 | 類型 | 默認值 | 描述 |
---|---|---|---|
archiveName | String | baseName-appendix-version-classifier.extension 如果這些屬性中的任何一個爲空,那後面的-不會被添加到該名稱中。 | 生成的歸檔文件的基本文件名 |
archivePath | File | destinationDir/archiveName | 生成的歸檔文件的絕對路徑。 |
destinationDir | File | 依賴於歸檔類型。JAR包和 WAR包會生成到 project.buildDir/libraries中。ZIP文件和 TAR文件會生成到project.buildDir/distributions中。 | 存放生成的歸檔文件的目錄 |
baseName | String | project.name | 歸檔文件的名稱中的基本名稱部分。 |
appendix | String | null | 歸檔文件的名稱中的附錄部分 |
version | String | project.version | 歸檔文件的名稱中的版本部分。 |
classifier | String | null | 歸檔文件的名稱中的分類部分。 |
extension | String | 依賴於歸檔的類型,用於TAR文件,可以是以下壓縮類型: zip, jar, war, tar, tgz or tbz2. | 歸檔文件的名稱中的擴展名稱部分。 |
reference
http://wiki.jikexueyuan.com/project/gradle-2-user-guide/working-with-files.html
https://docs.gradle.org/current/dsl/org.gradle.api.tasks.bundling.Zip.html