使用nexus创建私服:仓库概念和仓库分类

Posted my_captain

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用nexus创建私服:仓库概念和仓库分类相关的知识,希望对你有一定的参考价值。

一. 仓库概念

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:programIntelliJ IDEA 2019.1.3pluginsmavenlibmaven3confsettings.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. 私服:位于中央仓库之前的直接对接客户端的仓库

技术图片

 

以上是关于使用nexus创建私服:仓库概念和仓库分类的主要内容,如果未能解决你的问题,请参考以下文章

nexus在linux上搭建

CentOS 7搭建nexus私服仓库

nexus私服知识概括

(十五)使用Nexus创建Maven私服

maven 私服 配置 转

9.使用nexus3配置Python私有仓库