Maven学习笔记(五)—— 深入理解Maven的私服(Nexus)和仓库(Repository)以及settings中的mirror和mirrorOf

本文深入探讨了Maven中Nexus私服和仓库配置的重要性,解释了为什么需要Mirror和MirrorOf,以及它们如何提高jar包下载速度。通过实例展示了如何配置阿里云镜像作为中央仓库的镜像,以及如何使用Nexus搭建内部仓库,确保公司内部和第三方jar包的高效分发。最后,讨论了仓库、镜像和私服的结合使用策略,以实现不同下载需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        Maven给我们的开发工作带来了很大的便利,也增加了项目后期的可维护性,但它同样也很复杂,学习起来比较费劲,特别是一些配置可能很难搞明白。今天在这里主要是按照我们从学习到工作再到平台化开发等这样的需求升级顺序来详细分析一下,我们为什么需要Nexus,为什么需要Mirror,以及它们都应该如何配置。

目录

一、jar包是怎么下载下来的

二、为什么需要Mirror以及MirrorOf的作用

三、为什么需要私服

四、仓库,镜像,私服如何结合使用

1、下载链1

2、下载链2 


一、jar包是怎么下载下来的

        刚刚接触Maven时,可能我们最先学会的就是配置一下Maven的工作目录以及settings.xml文件,其他的配置可能要用了一段时间之后才学会怎么配置。这时我们应该都有一个疑问,当我们保存pom.xml文件后,jar包为什么就自动下载下来了?

        这其实跟pom.xml文件的继承有关,所有的maven项目中的pom.xml都继承了super pom.xml,那么super pom.xml的位置在哪里呢?你可以用解压工具打开位于${MAVEN_HOME}/lib/maven-model-builder-x.x.x.jar,然后访问路径org/apache/maven/model,在这个目录中我们可以看到一个pom-x.x.x.xml的文件,这就是super pom.xml文件。位置如下:

        打开这个pom文件我们可以看到在这个pom文件中配置了一个repository,这就是我们下载的jar包所存放的源仓库,它有一个url地址,我们用浏览器可以直接访问到这个地址,为了便于区分,这个仓库还有一个repositoryId 文件内容如下:

        当我们在项目中保存pom文件时,由于项目中的pom继承于这个super pom,所以maven会自动去这个中央仓库下载我们所需要的jar包,并保存在settings.xml文件配置的本地仓库中,当我们下次使用同样的maven构件时就不需要再去中央仓库下载了,它会直接去本地仓库中去查找,如果没有找到它才会去中央仓库去下载。

二、为什么需要Mirror以及MirrorOf的作用

        在工作中使用Maven时,我们会发现由于Maven默认使用的中央仓库地址在国外,网络不好的时候一个jar包半天下载不下来,如果这个时候刚好又急着用的话就很悲催了,所以为了提高jar包的下载速度,我们可以为中央仓库配置一个镜像,当需要到中央仓库下载jar包时就直接访问这个镜像即可。

        可能有的朋友不太明白镜像是什么意思,这里简单说明一下。首先,我们从字面意思理解一下。镜像,意为镜子里面的影

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值