我们使用mvn deploy:deplo
y 将工件部署到存储库管理器,并且开发人员可以只mvn install
为同一个工件完成,因此工件出现在M2_HOME\.m2\repository
如果它比本地存储库副本最近更新,maven 运行时是否会从存储库管理器中检索工件?
注意:我们使用基于 Apache Archiva 的 maven 存储库管理器。
答案取决于您是在谈论快照还是发布版本。
发布版本有一个不以“-SNAPSHOT”结尾的版本,它们是最终的和不可变的。一旦安装到任何存储库,Maven 将永远不会更新它们。对于您的问题,这意味着如果开发人员在本地安装发布版本,它将永远不会从任何远程存储库更新。
快照构建始终可以从任何存储库更新。默认情况下,Maven 每天检查一次新快照版本,因此如果有人在本地安装快照,该快照将一直存在,直到 Maven 下次检查快照更新。然后,如果它检查的任何远程存储库中有更新的版本,则本地存储库将被覆盖。-U
您可以使用命令行选项强制 maven 更新快照工件。