使用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:\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. 私服:位于中央仓库之前的直接对接客户端的仓库

原文地址:https://www.cnblogs.com/my_captain/p/12242501.html

时间: 2024-10-02 08:16:04

使用nexus创建私服:仓库概念和仓库分类(一)的相关文章

项目构建之maven篇:5.仓库及nexus创建私服-1

依赖坐标与本地仓库存储 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>3.0.7.RELEASE</version> </dependency> 本地仓库存储 仓库分类: 本地仓库: <localRepository>F:\maven\repos<

项目构建之maven篇:5.仓库及nexus创建私服-2

下载安装 下载地址 修改默认端口: home\conf\nexus.properties # Sonatype Nexus # ============== # This is the most basic configuration of Nexus. # Jetty section application-port=9080 application-host=0.0.0.0 nexus-webapp=${bundleBasedir}/nexus nexus-webapp-context-pa

使用Nexus创建私服

部署环境是windowsxp 首先从 http://nexus.sonatype.rog/downloads 下载最新版的Nexus 我们可以根据个人的需求下载.里面有nexus-webapp-1.9.2.3-bundle.zip等其他系统运行的压缩文件 或者war包nexus-webapp-1.9.2.3.war. nexus-webapp-1.9.2.3-bundle.zip 包里面自带了一个Jetty容器,这样我们不用另找容器,可以直接启动运行. Bundle 安装方式: 首页解压Bund

10 Maven-使用NEXUS创建私服

10.1 简介 私服:通过建立自己的私服,就可以降低中央仓库的负荷.节省外网带宽.加速Maven构建.自己部署构件等,从而高效的使用Maven. 有三种专门的Maven仓库管理软件可以用来帮助搭建建立私服,从而高效的使用Maven. Apache基金会的Archiva.JForg的Artifactory和Sonatype的Nexus.其中,Archiva是开源的,而Artifactory和Nexus的核心也是开源的. 10.2 安装Nexus Nexus是典型的Java Web应用,它有两种安装

Maven实战——使用Nexus创建私服(上)

首先下载Nexus,官方下载地址是http://nexus.sonatype.org/download, 我们可以根据需要下载不同的Bundle包,都是有.tar.gz..zip和.war格式的 1.bundle方式安装nexus nexues的Bundle自带了Jetty容器,因此用户不需要额外的web容器就能直接启动nexus.首先将Bundle文件解压到,会得到两个目录: nexus-webapp-1.7.2/:该目录包含了Nexus运行所需要的文件,如启动脚本.依赖jar包 sonaty

Maven学习笔记(八):使用Nexus创建私服

通过建立自己的私服,就可以降低中央仓库负荷.节省外网宽带.加速Maven构建.自己部署构件等,从而有效地使用Maven.Nexus是当前最流行的Maven仓库管理软件. Nexus简介: Nexus分为开源版和专业版,其中开源版本基于GPLv3许可证,其特性足以满足大部分Maven用户的需求.以下是一些Nexus开源版本的特性: 较小的内存占用(最少仅为28M) 基于ExtJS的友好界面 基于Restlet的完全REST API 支持代理仓库.宿主仓库和仓库组 基于文件系统,不需要数据库 支持仓

Maven实战——有用Nexus创建私服(下)

使用Maven部署构件至Nexus 日常开发生成的快照版本号构件能够直接部署到Nexus中策略为Snapshot的宿主仓库中.项目正式公布的构建部署到Nexus中策略为Release的宿主仓库中.POM的配置方式例如以下: <project> ... <distributionManagement> <repository> <id>nexus-releases</id> <name>Nexus Releases Repository

Maven实战——实用Nexus创建私服(下)

使用Maven部署构件至Nexus 日常开发生成的快照版本构件可以直接部署到Nexus中策略为Snapshot的宿主仓库中,项目正式发布的构建部署到Nexus中策略为Release的宿主仓库中.POM的配置方式如下: <project> ... <distributionManagement> <repository> <id>nexus-releases</id> <name>Nexus Releases Repository<

Maven之——Nexus创建仓库

Maven之--Nexus创建仓库 1.    创建宿主仓库 我们可以使用Maven内置的宿主仓库.发布版的Release.快照版的Snapshot.也可以自己创建宿主仓库.步骤如下: Release宿主仓库: 如上图操作.选择添加一个宿主仓库.下面的参数都可以将鼠标放在?上获取具体信息.这里只对重要的做说明:Repository Type 值为Relaese时.表示此宿主仓库是发布版.值为Snapshot时.表示此宿主仓库为快照版.Deployment用来配置此仓库的部署策略.选项有禁止部署(