【Maven】Nexus几个仓库的介绍

在 Nexus 仓库管理器中,maven-centralmaven-publicmaven-releasesmaven-snapshots 是常用的 Maven 仓库类型。每个仓库都有其特定的用途和功能。以下是对这些仓库的详细介绍:

1. maven-central

  • 类型:代理仓库(Proxy Repository)
  • 用途:代理 Maven Central 仓库,这是一个全球性的公共仓库,包含了大量的开源库和框架。
  • 特点
    • 远程索引:Nexus 会定期从 Maven Central 仓库同步元数据和索引,以便快速查找和下载依赖。
    • 缓存:Nexus 会缓存从 Maven Central 下载的包,减少对外部网络的依赖,提高构建速度。
    • 只读 :不能向 maven-central 仓库上传包,只能从中下载。

2. maven-public

  • 类型:组仓库(Group Repository)
  • 用途:聚合多个实际的 Maven 仓库,提供一个统一的访问点。
  • 特点
    • 聚合maven-public 通常会包含 maven-centralmaven-releasesmaven-snapshots 等仓库,形成一个虚拟的仓库组。
    • 单一入口 :开发人员和构建工具只需要配置一个 maven-public 仓库的 URL,即可访问所有的 Maven 包。
    • 灵活配置:可以根据需要添加或移除组中的仓库。

3. maven-releases

  • 类型:宿主仓库(Hosted Repository)
  • 用途:用于存储正式发布的版本(release)包。
  • 特点
    • 发布版本:存储经过测试和验证的稳定版本。
    • 不可变:一旦发布,包的内容不能更改。
    • 部署 :开发人员和持续集成系统可以将发布版本的包部署到 maven-releases 仓库。

4. maven-snapshots

  • 类型:宿主仓库(Hosted Repository)
  • 用途:用于存储开发中的快照(snapshot)版本包。
  • 特点
    • 快照版本:存储开发过程中的中间版本,这些版本可能包含未完成的功能或修复。
    • 可变:快照版本的包内容可以随时更新。
    • 自动更新:Maven 会自动检查并下载最新的快照版本,确保开发环境始终使用最新的代码。
    • 部署 :开发人员和持续集成系统可以将快照版本的包部署到 maven-snapshots 仓库。

示例配置

假设你已经安装并配置了 Nexus 仓库管理器,以下是如何创建和配置这些仓库的示例步骤:

1. 创建 maven-central 代理仓库
  1. 登录 Nexus 管理界面。
  2. 导航到 Repositories 页面。
  3. 点击 Create repository 按钮。
  4. 选择 proxy 类型。
  5. Format 下拉菜单中选择 maven2
  6. 填写仓库名称,例如 maven-central
  7. Remote storage location 中填写 Maven Central 的 URL,例如 https://repo1.maven.org/maven2/
  8. 点击 Create repository 完成创建。
2. 创建 maven-releases 宿主仓库
  1. 登录 Nexus 管理界面。
  2. 导航到 Repositories 页面。
  3. 点击 Create repository 按钮。
  4. 选择 hosted 类型。
  5. Format 下拉菜单中选择 maven2
  6. 填写仓库名称,例如 maven-releases
  7. 点击 Create repository 完成创建。
3. 创建 maven-snapshots 宿主仓库
  1. 登录 Nexus 管理界面。
  2. 导航到 Repositories 页面。
  3. 点击 Create repository 按钮。
  4. 选择 hosted 类型。
  5. Format 下拉菜单中选择 maven2
  6. 填写仓库名称,例如 maven-snapshots
  7. 勾选 Allow redeploy 选项,允许重新部署快照版本。
  8. 点击 Create repository 完成创建。
4. 创建 maven-public 组仓库
  1. 登录 Nexus 管理界面。
  2. 导航到 Repositories 页面。
  3. 点击 Create repository 按钮。
  4. 选择 group 类型。
  5. Format 下拉菜单中选择 maven2
  6. 填写仓库名称,例如 maven-public
  7. Group 部分,选择要包含在组中的仓库,例如 maven-centralmaven-releasesmaven-snapshots
  8. 点击 Create repository 完成创建。

总结

  • maven-central:代理 Maven Central 仓库,用于下载公共的开源库。
  • maven-public:组仓库,聚合多个实际的仓库,提供一个统一的访问点。
  • maven-releases:宿主仓库,用于存储正式发布的版本包。
  • maven-snapshots:宿主仓库,用于存储开发中的快照版本包,不是发布版本
相关推荐
Oneforlove_twoforjob5 分钟前
【Java基础面试题033】Java泛型的作用是什么?
java·开发语言
向宇it22 分钟前
【从零开始入门unity游戏开发之——C#篇24】C#面向对象继承——万物之父(object)、装箱和拆箱、sealed 密封类
java·开发语言·unity·c#·游戏引擎
小蜗牛慢慢爬行24 分钟前
Hibernate、JPA、Spring DATA JPA、Hibernate 代理和架构
java·架构·hibernate
星河梦瑾1 小时前
SpringBoot相关漏洞学习资料
java·经验分享·spring boot·安全
黄名富1 小时前
Redis 附加功能(二)— 自动过期、流水线与事务及Lua脚本
java·数据库·redis·lua
love静思冥想1 小时前
JMeter 使用详解
java·jmeter
言、雲1 小时前
从tryLock()源码来出发,解析Redisson的重试机制和看门狗机制
java·开发语言·数据库
TT哇1 小时前
【数据结构练习题】链表与LinkedList
java·数据结构·链表
Yvemil72 小时前
《开启微服务之旅:Spring Boot 从入门到实践》(三)
java
Anna。。2 小时前
Java入门2-idea 第五章:IO流(java.io包中)
java·开发语言·intellij-idea