我有一个构建脚本,它创建了用Gradle:中的Ant创建的.zip文件
ant.zip(destfile: targetFile) {
fileset(dir: tempLocation) {
include(name: "*/**")
}
}
(基本上它称Java Ant库,仅此而已)我的问题是,当我将同一个文件夹压缩两次时,两个.zip文件的哈希值不同。对于我们的构建管道,如果两个zip包含相同的文件(里面的文件完全相同),我需要它们具有相同的哈希。有人知道怎么做吗?
这里有一个例子:
https://dl.dropboxusercontent.com/u/9186429/573.zip
与
https://dl.dropboxusercontent.com/u/9186429/574.zip
编辑:经过调查,zip文件存储了文件的修改时间戳。Ant zip工具能改变/删除这个吗?
我通过将修改日期设置为我压缩的所有文件的硬编码常量来解决这个问题:
file.setLastModified(Constants.defaultModifiedTime);
...
ant.zip {
...