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