在 Maven 世界中,任何一个依赖、插件或者项目构建的输出,都可以称为 构件 。
坐标和依赖是构件在 Maven 世界中的逻辑表示方式,构件的物理表示方式是文件,Maven 通过仓库来统一管理这些文件。 任何一个构件都有一组坐标唯一标识。有了仓库之后,无需手动引入构件,我们直接给定构件的坐标即可在 Maven 仓库中找到该构件。
Maven 仓库分为:
-
本地仓库(Local Repository):
每台开发者的本地机器上都会有一个本地仓库,通常位于用户目录下的.m2
文件夹中。当你第一次使用 Maven 下载依赖时,Maven 会把这些依赖从中央仓库下载到本地仓库中。 -
远程仓库(Remote Repository):
除了中央仓库外,还可以配置其他远程仓库。远程仓库可以是公共的或私有的,用来存储组织内部或特定项目的依赖。企业通常会搭建私有的远程仓库来管理自己的项目依赖。
Maven 远程仓库可以分为:
1.中央仓库:这个仓库是由 Maven 社区来维护的,里面存放了绝大多数开源软件的包,并且是作为 Maven 的默认配置,不需要开发者额外配置。另外为了方便查询,还提供了一个查询地址open in new window,开发者可以通过这个地址更快的搜索需要构件的坐标。
2.私服:私服是一种特殊的远程 Maven 仓库,它是架设在局域网内的仓库服务,私服一般被配置为互联网远程仓库的镜像,供局域网内的 Maven 用户使用。