在使用第三方处于 SANPSHOT 状态的库时, maven 默认每次都会自动取远程仓库中的信息进行比较,以确定是否需要下载最新的版本。
这个过程有时候是非常耗时的,特别是在网络不是太顺畅的情况下。如何禁止这种默认行为呢?只要在项目的 pom.xml 文件中加入仓库的相关设置即可。比如:
1 | <repositories> |
在这段设置中,允许访问官方中心 snapshots 库,但把更新策略设置为 never, 这样就不会每次构建都要访问远程库了,大大加快了构建速度。
实际上,updatePolicy 可以选取的值有4个:
- always - 每次都和远程库进行比较
- daily - 每天比较,这是默认设置
- interval:minutes - 每隔几分钟,比如: interval:20
- never - 从不
设置为 never 后,也可以通过命令行的 -U 参数强制更新。比如:
1 | mvn clean install -U |