Search code examples
eclipsemaventycho

How to change the modified time stamp of files in a jar with a Tycho build


I have a Tycho build that builds some plugins. I need to configure the build so that it is reproducible - meaning the created artifacts of different build runs have to be identical.

For my build, this is currently not the case. The differentes of 2 build runs artifact's is the meta data of the files in the jar's. The "Modified" timestamp is different for every build.

So my question is: Does Tycho provide a way to set the modified timestamp to a specific value? Or is there another way do do this?

Image of the modified timestamp in the jar


Solution

  • I was able to fix it now. The maven plugin reproducible-build-maven-plugin does exactly what i need:

    <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>