mvn install -U 和 mvn install 有什么区别?

What is the difference between mvn install -U and mvn install?

虽然我知道 mvn install -U 用于 update-snapshots 并且它更新了从构建日志中看到的远程存储库中的所有内容,但我无法了解它会强制更新哪一部分。因为据我了解,即使 mvn install 也会从远程存储库中挑选东西,即使它存在于本地存储库中(除了 Maven 用于更新快照的内部计时器到期的情况)。

以上描述是否准确,还是我误解了update-snapshots的使用?

默认情况下,maven 检查 SNAPSHOT 工件的更新副本,即从远程存储库获取依赖工件的 SNAPSHOT 版本(例如 1.0-SNAPSHOT)。此选项强制 Maven 检查远程存储库中的所有快照,并在本地存储库过期时更新它。

Maven 正在根据时间间隔检查 SNAPSHOT 工件的更新。默认情况下每天检查一次。这意味着,如果早上您在 SNAPSHOT 中获得了更新,而下午远程存储库中有另一个版本可用,那么您要到明天才能获得它。

-U 选项强制检查 SNAPSHOT 更新,即使未达到更新间隔。

要添加一个注释,尽管 mvn -h-U 的描述是

Forces a check for updated releases and snapshots on remote repositories

根据我以前的经验,从不检查发布的更新。也就是说,我们将始终依赖于我们之前检索到的任何版本。