Windows 环境搭建 Maven 私有仓库实战

引言

在Windows 10系统中搭建Maven私有库,主要涉及安装 Nexus 并进行相应配置。以下是具体步骤和方法的总结。

一、Nexus是什么?

Nexus是Sonatype公司发布的一款功能强大的仓库管理软件,常被用来搭建Maven私服,因此也有人将其称为'Maven仓库管理器'。由于私服具有降低中央仓库负荷、节省外网带宽、提高项目稳定性等优点,因此在实际开发过程中得到了广泛应用。

Nexus分为开源版和专业版,其中开源版足以满足大部分个人和小型团队的需求,而专业版则提供了更多的企业级特性。作为一个强大的软件仓库,Nexus可以用来存储、共享和分发各种软件组件,如Java包、Ruby gems、Node.js包等,并且支持与Docker等容器技术的集成,提供企业级的安全性和可扩展性。因此,它被广泛用于企业级开发团队中,帮助他们更好地管理、共享和分发软件组件。此外,通过代理外部仓库、缓存构建和部署第三方构件等功能,Nexus可以显著提高开发团队的工作效率。

二、下载并安装Nexus

  1. 下载地址 :
  1. 下载完成后,解压文件到D盘(例如:D:\Nexus),解压文件 nexus-3.71.0-06-win64.zip

  2. 打开命令提示符PowerShell,进入Nexus的bin目录(例如:D:\Nexus\nexus-3.37.0-02-win64\bin)。

  3. 运行nexus.exe /run启动Nexus服务。

  1. 现如下界面表明启动成功,默认端口为8081:

如果需要修改端口号,可在配置文件(nexus-default.properties)中修改

  1. 访问Nexus Web界面:

通过浏览器访问http://localhost:8081/nexus,默认用户名和密码为admin和admin123

3.7 版本密码在文件夹 ...\nexus-3.71.0-06-win64\sonatype-work\nexus3\admin.password 文件中

三、 创建Maven仓库

  1. 在Nexus Web界面中,点击左侧的"Repositories"。
  2. 点击"Create Repository",选择"Maven2"作为仓库类型。

仓库 Type 类型说明:

仓库类型 说明
proxy 某个远程仓库的代理
group 存放:通过 Nexus 获取的第三方 jar 包
hosted 存放:本团队其他开发人员部署到 Nexus 的 jar 包

默认仓库说明:

仓库名称 说明
maven-central Nexus 对 Maven 中央仓库的代理,Nexus 可以配置代理仓库来代理 Maven 中央仓库,缓存从中央仓库获取的构件,加速本地访问速度 。
maven-public Nexus 默认创建,供开发人员下载使用的组仓库,public 仓库组通常用于聚合所有存储策略为 Release 的仓库,提供一个统一的服务地址。这样,Maven 客户端可以更方便地从这个统一地址获取所需的构件,无论是来自代理仓库还是宿主仓库 。
maven-releasse Nexus 默认创建,供开发人员部署自己 jar 包的宿主仓库,要求 releasse 版本
maven-snapshots Nexus 默认创建,供开发人员部署自己 jar 包的宿主仓库,要求 snapshots 版本
  1. 配置以下信息:

四、配置Maven项目

1. 打开Maven项目的pom.xml文件。

2. 添加以下仓库配置:

xml 复制代码
<repositories>
    <repository>
        <id>my-maven-repo</id>
        <url>http://localhost:8081/repository/my-maven-repo/</url>
    </repository>
</repositories>

3. 打开Maven的settings.xml文件。

添加以下仓库和认证配置:

xml 复制代码
<servers>
    <server>
        <id>my-maven-repo</id>
        <username>admin</username>
        <password>你的Nexus密码</password>
    </server>
</servers>

在mirrors节点下新增一个mirror节点,内容如下:

xml 复制代码
<mirror>
	<id>nexus</id>
	<mirrorOf>*</mirrorOf>
	<url>http://localhost:8081/nexus/content/groups/public/</url>
</mirror>

五、部署Maven项目到Nexus

在Maven项目的根目录下打开命令提示符或PowerShell。

运行以下命令部署项目到Nexus:

bash 复制代码
mvn clean deploy -DaltDeploymentRepository=my-maven-repo::default::http://localhost:8081/repository/my-maven-repo/

六、手动上传本地 jar 到仓库

参考:https://cloud.tencent.com/developer/article/2110916

相关推荐
叫我阿柒啊26 分钟前
从Java全栈到前端框架:一位程序员的实战之路
java·spring boot·微服务·消息队列·vue3·前端开发·后端开发
mqiqe1 小时前
架构-亿级流量性能调优实践
java·架构
要记得喝水1 小时前
C#某公司面试题(含题目和解析)--1
开发语言·windows·面试·c#·.net
野犬寒鸦1 小时前
力扣hot100:旋转图像(48)(详细图解以及核心思路剖析)
java·数据结构·后端·算法·leetcode
七夜zippoe2 小时前
AI+Java 守护你的钱袋子!金融领域的智能风控与极速交易
java·人工智能·金融
岁忧2 小时前
(LeetCode 面试经典 150 题) 200. 岛屿数量(深度优先搜索dfs || 广度优先搜索bfs)
java·c++·leetcode·面试·go·深度优先
liliangcsdn2 小时前
结合prompt分析NodeRAG的build过程
java·服务器·人工智能·数据分析·知识图谱
黑色的山岗在沉睡3 小时前
LeetCode 189. 轮转数组
java·算法·leetcode
会飞的小蛮猪3 小时前
Jenkins运维之路(权限分配&忘记admin密码)
java·运维·经验分享·jenkins·prometheus