mvn仓库配置,镜像,私服,远程仓库,本地仓库

镜像

概念解释

maven的镜像是在setting文件中配置的,镜像的作用相当给其他仓库中做的一个代理,假设A_repository中的资源是B_repository中资源的子集,那么就可以把B_repository配置成A_repository的代理镜像,也就可以吧B_repository称为A_repository的镜像。

适用场景(用途)

  • 为什么需要镜像呢,在不做任何处理的场景下,我们利用maven拉包(),会到A_repository仓库去拉,但如果是这个repository不在国内,会导致拉包的效率非常低,然后我们把国内的某个maven仓库配置成他的镜像,让所有去A_repository的拉包请求都转交B_repository来处理,因为B_repository在国内,那么包的下载速率就会有提升。
  • 所以镜像的配置可以理解为对原有repository的加速。

配置方法

mvn仓库配置,镜像,私服,远程仓库,本地仓库

  • 最外层的mirrors标签标示这是个镜像列表,里边可以配置多个镜像源,
  • 每个mirror代表一个镜像源,其中id作为镜像源的标示,url标示镜像源的地址,name没有明确作用,mirrorOf用来指被镜像的repository的id。

注意

  • 由于镜像仓库是会完全屏蔽被镜像仓库的,所以如果镜像仓库不稳定或者暂时无法访问的话,我们也是访问不到被镜像的仓库的。
  • 此外,对同一个repository配置的多个镜像,多个镜像是备份关系,只有上一个镜像找不到(即你访问的repository在这个mirror节点没匹配到)的场景下才会去匹配下一个镜像,如果一个镜像被匹配到了,但是找不到jar包,maven是不会再去第匹配第二个镜像,

私服

概念解释

适用场景(用途)

配置方法

私服认证配置

远程仓库

概念解释

适用场景(用途)

配置方法

本地仓库

本地仓库就是我们从就是自己pc中的 .m2/repository,我们从非本地仓库中获取的依赖都会放到这里,这个本地仓库就是一个缓存,当我们请求依赖的时候,会检查本地仓库里有没有,如果没有的话,再向远程仓库发起请求

依赖的下载顺序

本地仓库 --> 私服 --> 镜像 --> 远程仓库