MAVEN仓库简介

272人浏览 / 0人评论

MAVEN仓库是项目引入资源的存储位置。在 MAVEN 中,任何一个依赖、插件或者项目构建的输出,都可以称之为构件。Maven 仓库能帮助我们管理构件(主要是JAR),它就是放置所有JAR文件(WAR,ZIP,POM等等)的地方。

MAVEN仓库有三种类型:本地仓库、中央仓、远程仓库,接下来分别做具体介绍。

一、本地仓库

1、MAVEN本地仓库,在安装MAVEN后并不会创建,它是在第一次执行 maven 命令的时候才被创建

2、MAVEN所需要的任何构件都是直接从本地仓库获取的。如果本地仓库没有,它会首先尝试从远程仓库下载构件至本地仓库,然后再使用本地仓库的构件;

3、默认情况下,不管Linux还是Windows,每个用户在自己的用户目录下都有一个路径名为 .m2/repository/仓库目录

4、MAVEN本地仓库默认被创建在 %USER_HOME% 目录下。要修改默认位置,在 %M2_HOME%\conf 目录中的 settings.xml 文件中定义另一个路径。

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->
</settings>

二、中央仓库

1、MAVEN中央仓库是由 Maven 社区提供的仓库,其中包含了大量常用的库。

2、中央仓库包含了绝大多数流行的开源Java构件,以及源码、作者信息、SCM、信息、许可证信息等。一般来说,简单的Java项目依赖的构件都可以在这里下载到。

3、中央仓库的关键特点:

(1)这个仓库由 Maven 社区管理;

(2)MAVEN项目中不需要额外配置

(3)需要通过网络才能访问。

三、远程仓库

MAVEN远程仓库是除中央仓库外,需要通过网络才能访问的MAVEN仓库的统称。基于不同公司、组织或团队等的个性化构件私密性需要,往往会定制化搭建私有远程仓库,简称私服,包含如下特点: 

(1)通常架设在局域网范围,控制访问;

(2)通常具备其他远程仓库的代理,缓存第三方构件(三方包);

(3)第二方构件(二方包)发布/部署仓库,桥接项目间资源共享。

区别于私服的情况,本地仓库与远程仓库存在两种配置方式:

无私服情况

 

有私服情况

 

 

全部评论