Maven仓库
- 远程仓库
- 本地仓库
对于maven而言,只有本地仓库与远程仓库而已。当maven寻找构件时,首先查找本地仓库,如果存在,则直接使用;如果本地仓库不存在,才会向远程仓库查找,如果在远程仓库发现构件,则下载到本地仓库之后在进行使用,如果没有在远程仓库也没有找到,maven就会报错。
远程仓库、本地仓库、私服以及其他公开的远程仓库关系如下:
远程仓库
- 中央仓库
- 公司内的私服
- 其他公开的远程仓库
中央仓库是maven核心自带的远程仓库;私服是另一种类型的远程仓库,是在局域网内架设一个私有的仓库服务器,用其代理所有外部的远程仓库,而且内部的项目还能部署到私服上供其他项目使用。
除了中央仓库和私服,还有很多其他公开的远程仓库
私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,私服代理广域网上的远程仓库,供局域网内的Maven用户使用。当Maven需要下载构件的时候,它从私服请求,如果私服上不存在该构件,则从外部的远程仓库下载,缓存在私服上之后,再为Maven的下载请求提供服务。此外,一些无法从外部仓库下载到的构件也能从本地上传到私服上供大家使用。
本地仓库
在下载的maven工具后,对maven的安装目录下conf/setting.xml中进行配置的路径配置,就是当前maven的本地仓库。
<settings>
<localRepository>E:\mvn3.8-repo-repository</localRepository>
</settings>
如果没有进行配置,则仓库目录为 “当前用户目录下都有一个路径名为.m2/repository/的仓库目录”。