Java Maven:如何使快照工件完全相同,即使是在不同的时间构建的?
我们经常使用快照并频繁地重建,并且发现即使源代码没有更改,结果工件也与上次构建的工件不完全相同 我希望他们是 根据我在SO帖子中的理解,我再也找不到它们改变的两个原因:Java Maven:如何使快照工件完全相同,即使是在不同的时间构建的?,java,maven,jenkins,maven-war-plugin,maven-jar-plugin,Java,Maven,Jenkins,Maven War Plugin,Maven Jar Plugin,我们经常使用快照并频繁地重建,并且发现即使源代码没有更改,结果工件也与上次构建的工件不完全相同 我希望他们是 根据我在SO帖子中的理解,我再也找不到它们改变的两个原因: JAR/WAR/etc文件是带有额外元数据的zip文件,每个条目都有一个时间戳,即“汇编时”或“编译时” 已签名JAR包含未排序的签名信息(即,JVM之间的顺序可能会更改) 我们目前不使用签名JAR,如果JAR/WAR/etc文件中的所有日期戳都为0,那么我就可以接受它,如果这可以为我购买二进制标识的话 显然,这意味着我需要
- JAR/WAR/etc文件是带有额外元数据的zip文件,每个条目都有一个时间戳,即“汇编时”或“编译时”
- 已签名JAR包含未排序的签名信息(即,JVM之间的顺序可能会更改)
我的问题是,我应该如何处理这个问题 如果代码中没有任何更改,为什么要重建?@khmarbaise“mvn clean install”倾向于这样做。这不是这里的问题。