如何使用第谷构建更改 jar 中文件的修改时间戳

问题描述

我有一个 Tycho 版本,可以构建一些插件。我需要配置构建以使其可重现 - 这意味着不同构建运行的创建工件必须相同。

对于我的构建,目前情况并非如此。 2 个构建运行工件的不同之处在于 jar 中文件的元数据。每次构建的“修改”时间戳都不同。

所以我的问题是:第谷是否提供了一种将修改后的时间戳设置为特定值的方法?或者有其他方法可以做到这一点?

Image of the modified timestamp in the jar

解决方法

我现在能够修复它。 maven 插件 reproducible-build-maven-plugin 正是我需要的:

<plugin>
    <groupId>io.github.zlika</groupId>
    <artifactId>reproducible-build-maven-plugin</artifactId>
    <version>0.13</version>
    <executions>
        <execution>
            <goals>
                <goal>strip-jar</goal>
            </goals>
        </execution>
    </executions>
</plugin>

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...