一、坐标和构件
在了解maven仓库之前,先介绍一下坐标和构件。在maven的世界中,任何一个依赖、插件都称为构件,所有的构件均通过一个唯一坐标作为标识。那这个坐标如何确定,作为项目对象模型,maven通过pom.xml文件中标签值确定这个唯一坐标以确定项目依赖构件。形如:
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10<version>
</dependency>
二、maven仓库
通过pom文件设置找到项目依赖构件后,当然需要将构件【jar等文件】下载到本地,储存这些所有构件的地方就是maven仓库,仓库就是用于管理项目依赖jar的,分为本地仓库和远程仓库。
如果本地仓库中找不到项目需要的构件【需要哪些通过pom文件依赖设置】,则会去远程仓库查找并下载。
maven默认提供了一个全球的中央仓库地址,如果本地仓库中没有项目需要的jar包,在配置好pom文件后,便直接从远程中央仓库中下载到本地仓库。远程仓库地址可从maven-apache-maven-3.2.3【lib】中解压【maven-model-builder-3.2.3.jar】,打开org\apache\maven\model,其中pom-4.0.0.xml是maven提供的超级pom,所有的pom都会继承与该pom。打开后,如图所示地址便是maven中央仓库访问路径【https://repo.maven.apache.org/maven2】。
浏览器打开该url,显示如图:
中央仓库包含了平时java开发需的大部分框架,这也体现了使用maven管理项目对于jar包的便利管理。再也不用各种官网地址一 一下载。
三、镜像
maven中央仓库的服务器一般都存在于国外,为方便国内更方便访问外网,那么用国内的镜像仓库,便可访问一个与国外中央仓库一模一样的仓库地址。镜像也就是将国外的中央仓库全部copy一份到国内使用。
在ITOO项目的使用中呢,也为maven配置了镜像,不同的是咱不是从国外到国内,而是为本地maven仓库配置镜像到私服 【nexus】上。
【nexus】
小名:私服,属性:远程仓库;
简介:相当于在本地的局域网搭建了一个类似中央仓库的服务器。
镜像可通过指定仓库名,也可以使用【*】通配符,来匹配所有的镜像,并且一旦配置了镜像,所有针对原仓库的访问都将转到镜像。
maven从远程仓库中下载构件,默认存放到本地用户.m2文件夹中:
由于,考虑到如果重装系统,那么原本稳定的jar和项目版本可能都会收到影响,所以一般不会将.m2存放到C盘中,那么如何修改maven远程仓库更新到本地的存放文件路径?
同样是设置settings.xml中<localRepository>D:/maven/Response</localRepository> ——》指定 本地仓库位置
通过对maven仓库的介绍,想必有一定maven使用基础的朋友已经对maven有了更清晰的了解。下篇博文将介绍maven在eclipseIDE中的使用。大家敬请期待。