首页 > 解决方案 > Build.Gradle ZIP 任务压缩到子文件夹

问题描述

使用自定义文件夹层次结构压缩包:

root/
  bin/
  dir1/
  dir2/

但输出是:

root/
  bin/
    dir1/
    dir2/

代码:

task archiveZip(type:Zip) {
    archiveName "CUSTOMZIP"
    
    from fileTree("${projectDir}/path/export/bin") {
        include "**"
        into "bin"
    }
    
    def dirToZip = "${projectDir}/path/config"
    from (fileTree(dirToZip)) {
        include "file1.txt"
        into "dir1"
    }
    
    from (fileTree(dirToZip)) {
        include "file2.txt"
        into "dir2"
    }
}

如何保留此层次结构:

root/
  bin/
  dir1/
  dir2/

标签: gradlegroovy

解决方案


解决方案是/bin从路径中删除并删除into部分

from fileTree("${projectDir}/path/export")

推荐阅读