maven中镜像mirror使用

最近使用maven过程中,为了加快下载jar包的速度用了一下maven的mirror,总会遇到各种问题。实在是没有办法了,认真找了些资料搞明白了基本用法。在这里做个记录。

mirrors允许配置多个镜像mirror,mirror的作用一般是为了使用一个更快速度的镜像,主要是访问速度的考虑,或者突破屏蔽(部分jar被河蟹)使用可以访问的镜像。

1.在maven中不配置mirror时如果本地仓库中找不到jar包,使用的maven的中央库。

2.在maven中配置一个mirror时,mirror通常会设置成*,还有可能是一个具体的值,还有可能是逗号隔开的几个值..

例如:

*匹配所有远程仓库
external:*匹配所有远程仓库,匹配所有不在本机的仓库
repo1,repo2,匹配仓库repo1和repo2
*,!repo1:匹配所有远程仓库,除了repo1

 

之前对external:*不太理解,特意做了个实验,得出结论:

只要配置了此项,所有包都从镜像配置的仓库下载,如果本地仓库中有也去远程下载。

maven中镜像mirror使用_第1张图片

 

说明maven依赖的解析方式:

解析发布版本:

如果本地有,直接使用本地的,没有就向远程仓库请求。

解析快照版本:

合并本地和远程仓库的元数据文件-groupId/artifactId/version/maven-metadata.xml,这个文件存的版本都是带时间戳的,将最新的一个改名为不带时间戳的格式供本次编译使用

 

你可能感兴趣的:(maven)