(三)Maven使用--Maven仓库

1.Maven仓库的分类

  maven的工作需要从仓库下载一些jar包,如下图所示,本地的项目A、项目B等都会通过maven软件从远程仓库下载jar包并存放在本地仓库,(本地仓库,即本地文件夹,)当第二次需要此jar包时则不再从远程仓库下载,因为本地仓库已经存在了,可以将本地仓库理解为缓存,有了本地仓库就不需要从远程仓库下载了。

  寻找构件时,首先从本地仓库找,找不到则到远程仓库找,再找不到就报错;在远程仓库中找到了,就下载到本地仓库再使用。中央仓库是 Maven 核心自带的远程仓库,默认地址:http://repo1.maven.org/maven2。除了中央仓库,还有其它很多公共的远程仓库。私服是架设在本机或局域网中的一种特殊的远程仓库,通过私服可以方便的管理其它所有的外部远程仓库。

图参考博文:https://www.cnblogs.com/jpfss/p/11312669.html

 

2.本地仓库:

  2.1.用来存储从远程仓库或中央仓库下载的插件和jar包,项目适应一些插件或jar包,优先从本地仓库查找

  2.2.本地仓库的默认位置:settings.xml文件中查看、和设置

3.中央仓库

  安装完 Maven ,本地仓库几乎是空的,这时需要从远程仓库下载所需构件。Maven 配置了一个默认的远程仓库,即中央仓库,找到 %MAVEN_HOME%/lib/maven-model-builder-3.2.1.jar,打开 org/apache/maven/model/pom-4.0.0.xml:

 打开:

4.在项目中添加其他远程仓库

  当中央仓库找不到所需的构件时,我们可以配置 pom.xml ,添加其它的远程仓库。

  

  其中 id 必须唯一,若不唯一,如设置为 central 将覆盖中央仓库的配置。

5.镜像仓库

镜像仓库可以理解为仓库的副本,从仓库中可以找到的构件,从镜像仓库中也可以找到。比如针对中央仓库 http://repo1.maven.org/maven2 ,在中国有它的镜像仓库,这样我们直接访问镜像仓库,更快更稳定。
其中,<mirrorOf> 指明了为哪个仓库配置镜像,可以使用通配符如:<mirrorOf>*</mirrorOf>,或者 <mirrorOf>repo1,repo2</mirrorOf> 等进行匹配。一旦配置了镜像,所有针对原仓库的访问将转到镜像仓库的访问,原仓库将不再能直接访问,即使镜像仓库不稳定或停用。在搭建私服的时候,我们通常为所有仓库设置镜像为私服地址,通过私服对所有仓库进行统一管理。
posted @ 2020-07-27 21:47  Cheer快快跑  阅读(418)  评论(0编辑  收藏  举报