Java 即使代码没有更改,maven也会更新目标jar

Java 即使代码没有更改,maven也会更新目标jar,java,maven,makefile,Java,Maven,Makefile,我正在用Maven构建一个jar包,看起来jar文件在每个mvn包上都会更新,即使源代码没有更改。文件大小不变,但修改日期不变 这会导致问题,因为在更高的级别上有makeinstall,它会选择修改日期较新的jar文件,然后无缘无故地重新安装它(导致更多的麻烦,比如在Tomcat中重新加载) 这是Maven的预期行为还是我可能做错了什么?AFAIK这是预期行为。按设计工作。对于构建工具来说,这是一个令人惊讶的行为。总之,我似乎需要一个单独的Makefile来跟踪java源代码,这将允许仅在某些源

我正在用Maven构建一个jar包,看起来jar文件在每个
mvn包
上都会更新,即使源代码没有更改。文件大小不变,但修改日期不变

这会导致问题,因为在更高的级别上有
makeinstall
,它会选择修改日期较新的jar文件,然后无缘无故地重新安装它(导致更多的麻烦,比如在Tomcat中重新加载)


这是Maven的预期行为还是我可能做错了什么?

AFAIK这是预期行为。按设计工作。对于构建工具来说,这是一个令人惊讶的行为。总之,我似乎需要一个单独的Makefile来跟踪java源代码,这将允许仅在某些源文件确实发生更改时才执行
mvn package
。这听起来有点奇怪,因为jar插件有一个forceCreation选项:-这似乎不是默认行为。或者您是在使用SpringBoot还是其他东西来创建jar?maven没有gradle那样的密切变更跟踪功能,但它确实监控输入/输出文件的时间戳,所以这有点可疑。我没有使用任何特殊的东西,只是
mvn-q-B包