maven--仓库管理

Maven仓库管理

1.什么是Maven仓库?

用来统一存储所有Maven共享构建的位置就是仓库。

根据Maven坐标定义每个构建在仓库中唯一存储路径大致为:groupId/artifactId/version/artifactId-version.packaging

2.仓库的分类

1、本地仓库

~/.m2/repository

每个用户只有一个本地仓库

2、远程仓库

l  中央仓库:Maven默认的远程仓库,不包含版权资源

              http://repo1.maven.org/maven2

l  私服:是一种特殊的远程仓库,它是架设在局域网内的仓库

maven--仓库管理_第1张图片

Maven私服

1   安装Nexus

为所有来自中央仓库的构建安装提供本地缓存。

下载网站:http://nexus.sonatype.org/


安装版本:nexus-2.7.0-06.war

第一步:将下载的nexus的war包复制到tomcat下的webapps目录。

第二步:启动tomcat。nexus将在c盘创建sonatype-work目录【C:\Users\当前用户\sonatype-work\nexus】。

1       Nexus的目录结构

Ø  目录结构如下:

maven--仓库管理_第2张图片

Ø  Indexer 索引目录结构:

maven--仓库管理_第3张图片

Ø  Storage存储目录结构:

maven--仓库管理_第4张图片


访问Nexus

访问URL: http://localhost:8080/nexus-2.7.0-06/

默认账号:

用户名: admin

密码: admin123

Nexus的仓库和仓库组

maven--仓库管理_第5张图片

仓库有4种类型 :

l  group(仓库组):一组仓库的集合

l  hosted(宿主):配置第三方仓库(包括公司内部私服)

l  proxy(代理):私服会对中央仓库进行代理,用户连接私服,私服自动去中央仓库下载jar包或者插件

l  virtual(虚拟):兼容Maven1 版本的jar或者插件

 

Nexus的仓库和仓库组介绍:

l  3rd party: 一个策略为Release的宿主类型仓库,用来部署无法从公共仓库获得的第三方发布版本构建

l  Apache Snapshots: 一个策略为Snapshot的代理仓库,用来代理Apache Maven仓库的快照版本构建

l  Central: 代理Maven中央仓库

l  Central M1 shadow: 代理Maven1 版本中央仓库

l  Codehaus Snapshots: 一个策略为Snapshot的代理仓库,用来代理Codehaus Maven仓库的快照版本构件

l  Releases: 一个策略为Release的宿主类型仓库,用来部署组织内部的发布版本构件

l  Snapshots: 一个策略为Snapshot的宿主类型仓库,用来部署组织内部的快照版本构件

PublicRepositories:该仓库组将上述所有策略为Release的仓库聚合并通过一致的地址提供服务


配置所有构建均从私服下载

在本地仓库的setting.xml中配置如下:


	 
		 
		 nexus
		 *
		 http://localhost:8080/nexus-2.7.0-06/content/groups/public/
	 
 

maven--仓库管理_第6张图片

部署构建到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命令

maven--仓库管理_第7张图片





你可能感兴趣的:(JavaEE,maven)