maven配置多个镜像

摘要:
--中央仓库2--˃repo2CentralHumanReadableName用于此镜像http://repo2.maven.org/maven2/复制Maven配置文件设置中的代码xml中有一个镜像节点用于配置图像url。无论您配置了多少个库,即使这些库的地址不同,仍然可以从映像地址访问它们

问题场景
1、国内访问maven默认远程中央镜像特别慢

2、用阿里的镜像替代远程中央镜像

3、大部分jar包都可以在阿里镜像中找到,部分jar包在阿里镜像中没有,需要单独配置镜像

解决方案
settings.xml 中可以使用变量,可以尝试使用变量解决:

复制代码


alimaven
central
aliyun maven
http://maven.aliyun.com/nexus/content/repositories/central/

    <!-- 中央仓库1 -->
    <mirror>
        <id>repo1</id>
        <mirrorOf>central</mirrorOf>
        <name>Human Readable Name for this Mirror.</name>
        <url>http://repo1.maven.org/maven2/</url>
    </mirror>

    <!-- 中央仓库2 -->
    <mirror>
        <id>repo2</id>
        <mirrorOf>central</mirrorOf>
        <name>Human Readable Name for this Mirror.</name>
        <url>http://repo2.maven.org/maven2/</url>
    </mirror>
复制代码

在maven的配置文件setting.xml大里面有个mirrors节点,用来配置镜像URL。mirrors可以配置多个mirror,每个mirror有id,name,url,mirrorOf属性,

id是唯一标识一个mirror,name节点名,url是官方的库地址,mirrorOf代表了一个镜像的替代位置,例如central就表示代替官方的中央库

虽然mirrors可以配置多个子节点,但是它只会使用其中的一个节点,即默认情况下配置多个mirror的情况下,只有第一个生效,只有当前一个mirror

无法连接的时候,才会去找后一个;而我们想要的效果是:当a.jar在第一个mirror中不存在的时候,maven会去第二个mirror中查询下载,但是maven不会这样做!

注意:

配置多个mirror时,mirrorOf不能配置" * "," * " 的意思就是(根据mirrorOf和repository的id)匹配所有的仓库(repository),

这样就是说如果你需要某个jar,他会从镜像地址去下载这个jar。不管你配置了多少个库,即使这些库的地址不一样,仍然会从镜像地址访问

免责声明:文章转载自《maven配置多个镜像》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇pandas 2 选择数据yarn上运行flink环境搭建下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Docker 安装 Python

Docker 安装 Python 方法一、docker pull python:3.5 查找 Docker Hub 上的 python 镜像: docker search python 这里我们拉取官方的镜像,标签为3.5 : docker pull python:3.5 等待下载完成后,我们就可以在本地镜像列表里查到 REPOSITORY 为 py...

Docker容器常用命令

Docker 容器使用 获取镜像 docker pull <镜像名> 已安装的镜像列表 docker images 启动镜像 docker run -it ubuntu /bin/bash 参数说明: -i: 交互式操作。 -t: 终端。 ubuntu: ubuntu 镜像。 /bin/bash:放在镜像名后的是命令,这里我们希望有个...

ROS在Ubuntu下的安装

本文参考为ROS的官方教程http://wiki.ros.org/hydro/Installation/Ubuntu ROS是一款机器人操作系统,截止到目前(2013年11月),最新的版本号为hydro。据官方网站的消息,下一次更新将在2014年的4月份左右。 下面,就来说一下如何在Ubuntu下安装ROS,我的笔记本操作系统为Ubuntu 12.04 L...

清理Docker占用的磁盘空间,迁移 /var/lib/docker 目录

https://blog.csdn.net/weixin_32820767/article/details/81196250?utm_source=blogxgwz0du -hs /var/lib/docker/ 命令查看磁盘使用情况。 linlf@dacent:~$ sudo du -hs /var/lib/docker/ 237G /var/l...

docker 的安装与卸载

Docker 理解为应用市场管家 核心简化运维安装软件的发杂环境 Docker daemon( Docker守护进程) Docker daemon是一个运行在宿主机( DOCKER-HOST)的后台进程。可通过 Docker客户端与之通信。 Client( Docker客户端) Docker客户端是 Docker的用户界面,它可以接受用户命令和配置标识,并...

Docker中的镜像分层技术详解

早在集装箱没有出现的时候,码头上还有许多搬运的工人在搬运货物,在集装箱出现以后,码头上看到更多的不是工人,而且集装箱的搬运模式更加单一,更加高效,还有其他的好处,比如:货物多打包在集装箱里面,可以防止货物之前相互影响。并且到了另外一个码头需要转运的话,有了在集装箱以后,直接把它运送到另一个容器内即可,完全可以保证里面的货物是整体的搬迁,并且不会损坏货物本身...