一 .为何有maven仓库
为了避免包重复使用。任何Maven项目使用任何一个构件的方式是完全相同的,maven在某个位置同意存储所哟umaven项目共享的构件,这个统一的位置就是仓库。
二.仓库的布局
任何构件都有其唯一的坐标,groupId/artifactId/version/artifactId.packageing
三.仓库的分类
3.1 本地仓库
默认情况下要从conf/setting.xml里拷贝文章到.m2/setting.xml下。
mvn clean install 将目标的构件输出文件到本地仓库
3.2 远程仓库
本地仓库没有去远程仓库下载
3.3 中央仓库
中央仓库是默认的远程仓库
<repository>
<id>central</id> //对中央仓库的唯一布局
<name>Maven repository Switchboard</name>
<url>http://repo1.maven.org/maven2</url>
<snapshots>
<enabled>false</enabled> //表示不从中央仓库下载快照版本的构件
</snapshots>
</repository
3.4 私服
私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务
私服的作用:
1. 节省自己的外网带宽
2.加速maven构件
3.部署第三方构件
4.提高稳定性
5.降低中央仓库的负荷
四. 远程仓库的配置
releases 发布版本,snapshots快照版本
6.4.1 远程仓库的认证
6.4.2 部署至远程仓库
id是该仓库的唯一标示,url仓库地址
配置正确后,运行 mvn clean deploy
五 .快照版本
在没有经过测试之前,快照版本能保证拿到最新的版本, mvn clean install -U可以强制更新
六 从仓库解析依赖的机制
七 .镜像
如果仓库X可以提供仓库Y存储的内容,那么X是Y的一个镜像,镜像能够提供比中央仓库更快的服务
私服就是中央仓库的镜像
八.仓库搜索服务
1. Sanatpe Nexus
2.Jarvana
3.MVNbroewser
4.MVNreposity