多镜像 mirror , 实现自动切换仓库下载包

news/2024/11/23 0:53:18/

试了两项目发现可以,还有一个在看,也不知道是不是重复依赖太多导致编译不成功。。。

问题场景:

1.公司有内部搭建的nexus(私有maven库), 添加了 mirror 配置

1
2
3
4
5

<mirror>
    <id>yougou</id>
    <mirrorOf>*</mirrorOf><!-- *代表拦截了所有仓库, 缺点是也包括了默认的中心仓库 -->
    <url>http://repo1.maven.org/maven2/</url>
</mirror>

2.有时候要用到的一些jar包可能公司的私库并没有, 我们一般都会使用aliyun的maven库进行加速

所以, 造成了下载一些jar包时会反复修改setting.xml文件, 很麻烦

官网 关于镜像的介绍 https://maven.apache.org/guides/mini/guide-mirror-settings.html

通过官网的举例

1
2
3
4
5
6
7
8
9
10
11
12

Examples:
* = everything
external:* = everything not on the localhost and not file based.
repo,repo1 = repo or repo1
*,!repo1 = everything except repo1

机器翻译:
例子:
* =            一切
外部:* =       不在本地主机上的所有内容,也不是基于文件的。
repo,repo1 =   repo或repo1
*,!repo1 =     除repo1之外的所有内容

得到解决方案(只保留了关键的配置)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

  <mirrors>
        <mirror>
            <id>yougou</id>
            <mirrorOf>*,!aliyun</mirrorOf>    <!-- *镜像拦截了所有的仓库, 但 排除了阿里云的仓库  逗号两边不能有空格  从左到右的顺序 -->
            <url>http://repo1.maven.org/maven2/</url> <!-- 设置公司私库地址 -->
        </mirror>
  </mirrors>
 
  <profiles>
        <profile>
            <id>aliyun_profile</id>
            <repositories>
                <repository>
                    <id>aliyun</id> <!-- 添加阿里云的maven仓库 -->
                    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
            </repositories>
        </profile>
  </profiles>

  <activeProfiles>
    <activeProfile>aliyun_profile</activeProfile> <!-- 让添加的阿里云仓库生效 -->
  </activeProfiles>

</settings>

修改完后可以通过命令来检查 setting.xml文件是否有问题

mvn help:effective-settings


http://www.ppmy.cn/news/9865.html

相关文章

Python基础(二十二):文件操作

文章目录 文件操作 一、文件操作的作用 二、文件的基本操作 1、文件操作步骤

(1分钟速览)SLAM问题中一般方程和超定方程的求解

今天在学习的过程中偶然看到了一个博客&#xff0c;总结Axb的&#xff0c;那么我也写一篇。首先就是判断A的秩和(A|b)的秩之间的关系&#xff0c;然后通过这个关系来进行进一步地判断。编辑切换为居中添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09;求解方…

优秀的 Verilog/FPGA开源项目介绍(三十六)-RISC-V(新增一)

关于RISC-V的二三事risc-v官网❝https://riscv.org/RISC-V&#xff08;跟我读&#xff1a;“risk----------------five”&#xff09;是一个基于精简指令集&#xff08;RISC&#xff09;原则的开源指令集架构&#xff08;ISA&#xff09;。这里要明确两个概念&#xff1a;指令集…

链表常见OJ题汇总(持续更新)

目录前言一、移除链表中的元素&#xff08;多指针法&#xff09;二、反转链表&#xff08;多指针法&头插法&#xff09;三、链表的中间结点&#xff08;算数法和双指针法&#xff09;四、链表中的第K个结点&#xff08;算数法&双指针法&#xff09;五、合并两个有序链表…

js实现纯前端压缩图片

演示 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>压缩图片</title> </head> <bo…

基于yolov5-v7.0开发构建裸土实例分割检测识别模型

yolov5在v7.0的版本中加入了对图像实例分割的全面支持&#xff0c;这里主要就是想基于v7.0的分支来开发构建裸土分割模型&#xff0c;其实在实际计算的时候模型是可以连带着检测任务一起输出结果的&#xff0c;这里我从结果形式上面直观来看应该就是在推理阶段直接基于分割的结…

TCP/IP协议

作者&#xff1a;~小明学编程 文章专栏&#xff1a;JavaEE 格言&#xff1a;热爱编程的&#xff0c;终将被编程所厚爱。 目录 应用层 XML json ​编辑 protobuffer 传输层 UDP的数据报文格式 TCP报文格式 TCP的可靠传输 确认应答&#xff08;安全机制&#xff09; …

养老院人员定位方案125K芯片AS3933/SI3933/GC3933/PAN3501

随着社会老龄化&#xff0c;高龄化&#xff0c;空巢化和病残化的迅速发展&#xff0c;将使得越来越多的老人住进养老院。虽养老院数量越来越多&#xff0c;但养老院人也越来越多&#xff0c;给现有的养老管理上带来压力&#xff0c;由于服务人员有限&#xff0c;无法及时顾及到…