我需要创建没有根目录的tar.gz软件包。 现在我有了树:enter image description here
结果示例:enter image description here
我使用gradle任务,该任务使用cfg目录创建了tar.gz包:
plugins.withType(DistributionPlugin) {
distTar() {
into('cfg') { from 'cfg' }
compression = Compression.GZIP
extension = 'tar.gz'
}
}
答案 0 :(得分:0)
如果您需要从生成的档案中删除根目录,则可以使用Tar.eachFile API来更改/更改目标文件路径,如下所示:
distTar {
// Alter file path to remove root level directory
eachFile { file ->
String path = file.relativePath
file.setPath(path.substring(path.indexOf("/")+1, path.length()))
}
}
(我没有从Tar任务API中找到任何方法或属性来更好地实现此目的)