**
Maven仓库管理
**
1 什么是Maven仓库?
用来统一存储所有Maven共享构建的位置就是仓库。根据Maven坐标定义每个构建在仓库中唯一存储路径大致为:groupId/artifactId/version/artifactId-version.packaging
2 仓库的分类
本地仓库
默认在~/.m2/repository,如果在用户配置中有配置,则以用户配置的地址为准
远程仓库
中央仓库(不包含有版本的jar包)
http://repo1.maven.org/maven2
***
在局域网搭建一个***,这样可以缓解所有的人都***仓库,然后所有人共享。
3 Maven***
1 安装Nexus
为所有来自中央仓库的构建安装提供本地缓存。
下载网站:http://nexus.sonatype.org/
安装版本:nexus-2.7.0-06.war
第一步:安装tomcat
第二步:将nexus的war包拷贝到tomcat的webapps下
第三步:启动tomcat
第四步:nexus的本地目录
访问Nexus
访问URL: http://localhost:8080/nexus-2.7.0-06/
默认账号:
用户名: admin
密码: admin123
**
Nexus的仓库和仓库组
**
仓库有4种类型 :
group(仓库组):一组仓库的集合
hosted(宿主):配置第三方仓库 (包括公司内部*** )
proxy(代理):***会对中央仓库进行代理,用户连接***,***自动***仓库下载jar包或者插件
virtual(虚拟):兼容Maven1 版本的jar或者插件
Nexus的仓库和仓库组介绍:
3rd party: 一个策略为Release的宿主类型仓库,用来部署无法从公共仓库获得的第三方发布版本构建
Apache Snapshots: 一个策略为Snapshot的代理仓库,用来代理Apache Maven仓库的快照版本构建
Central: 代理Maven中央仓库
Central M1 shadow: 代理Maven1 版本 中央仓库
Codehaus Snapshots: 一个策略为Snapshot的代理仓库,用来代理Codehaus Maven仓库的快照版本构件
Releases: 一个策略为Release的宿主类型仓库,用来部署组织内部的发布版本构件
Snapshots: 一个策略为Snapshot的宿主类型仓库,用来部署组织内部的快照版本构件
Public Repositories:该仓库组将上述所有策略为Release的仓库聚合并通过一致的地址提供服务
配置所有构建均从***下载
在本地仓库的setting.xml中配置如下:
nexus
*
http://localhost:8080/nexus-2.7.0-06/content/groups/public/
部署构建到Nexus
第一步:Nexus的访问权限控制
在本地仓库的setting.xml中配置如下:
releases
admin
admin123
snapshots
admin
admin123
第二步:配置pom文件
在需要构建的项目中修改pom文件
releases
Internal Releases
http://localhost:8080/nexus-2.7.0-06/content/repositories/releases/
snapshots
Internal Snapshots
http://localhost:8080/nexus-2.7.0-06/content/repositories/snapshots/
第三步:执行maven的deploy命令
可以在以下中修改配置