maven入门基础:仓库概念和仓库分类(一)

一. 仓库概念

1. 构件:指的是任何的依赖、插件、项目输出的jar包,都称之为构件

2. 仓库:Maven构件在统一的地方存储,然后供任何Maven项目使用

3. 仓库根据构件的唯一坐标(/groupId/artifactId/version/artifactID-version.packaging)确定唯一的存放地址,这就是仓库的布局

4. 坐标内容包括

  • groupId:必选,通常用java包的形式表示(也就是.(点)表示法),内容一般是组织或公司下的某个项目,例如,org.sonatype.nexus,org.sonatype为非盈利组织,nexus为实际项目,与它实际的域名:nexus.sonatype.org对应
  • artifactId:必选,项目或模块名,表示实际项目作为前缀,后面跟模块名,例如,nexus-indexer,nexus-core
  • version:必选,版本号,通常用两个点表示,例如,1.0.0
  • packaging:可选,Maven打包方式,包括:jar(公用库,默认),war(web包)、POM(父模块)

 

 

 

二. 仓库分类

分为本地仓库远程仓库(远程仓库包括:中央仓库、私服仓库、其他公共库)

 

1. 本地仓库:非Maven工程的lib目录下一般存放的是公共的jar包,而Maven工程不需要有lib目录,所有的公共jar包都存在在本地仓库

2. 本地仓库的目录:一般在.m2/repository,比如:

 

 

而我的本地是在E:\maven_repository,为什么会不一样,这与目录设置有关

 

3. 本地仓库存放jar包的目录设置

配置文件的路径:D:\program\IntelliJ IDEA 2019.1.3\plugins\maven\lib\maven3\conf\settings.xml

 

 

配置项:

<localRepository>E:\maven_repository</localRepository>

 

 4. 构建如何进入本地仓库

(1) 从远程仓库下载

(2) 直接拷贝其他构建到本地仓库,比如项目组内有B依赖A,A又不在远程仓库,那直接把A拷贝到B的本地仓库

 

 

 


 

 

1. 远程仓库

2. 超级POM文件

(1) 它是所有Maven项目的最底层POM文件,其他的POM文件都要继承于它

(2) 它定义了默认的中央仓库地址信息

3. 默认的中央仓库地址信息查找方法:maven-model-builder-3.3.9.jar

解压后可以查看仓库地址定义在:

  <repositories>
    <repository>
      <id>central</id>     central:中央仓库唯一标识
      <name>Central Repository</name>
      <url>https://repo.maven.apache.org/maven2</url>  URL:中央仓库地址
      <layout>default</layout>  默认布局模式(构建查找模式)。根据构件的唯一坐标(/groupId/artifactID/verison/artifactID-version.packaging)确定唯一的存放地址,这就是仓库的布局,注意groupId/artifactID 中的“.”会转换为“/”形成文件路径
      <snapshots>
        <enabled>false</enabled> false:不从中央仓库下载快照true:从中央仓库下载快照
      </snapshots>
    </repository>
  </repositories>

 

 


 

 

1. 私服:位于中央仓库之前的直接对接客户端的仓库

 

posted @ 2020-01-30 12:39  cnhkzyy  阅读(764)  评论(0编辑  收藏  举报