Maven仓库镜像配置的方法实现

 更新时间:2024年12月02日 11:38:39   作者:邢为栋  
本文介绍了如何使用Maven仓库镜像来加速构建过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

在使用Maven构建中,使用仓库镜像,可以加速构建,这里介绍仓库镜像使用方法,留作笔记。

配置说明

使用仓库镜像

配置一个仓库的镜像,可以编辑配置文件(${user.home}/.m2/settings.xml):

如果没有${user.home}/.m2/settings.xml,可以从maven安装目录的conf目录下复制。

<settings>
  ...
  <mirrors>
    <mirror>
      <id>other-mirror</id>
      <name>Other Mirror Repository</name>
      <url>https://other-mirror.repo.other-company.com/maven2</url>
      <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>
  ...
</settings>

参数说明:

参数说明
id镜像ID
name镜像名
url镜像url
mirrorOf镜像仓库替换的目标仓库

使用单一仓库

如果希望所有maven请求都访问一个仓库(比如自建仓库),可以指定maven使用单一仓库,配置如下:

&lt;settings&gt;
  ...
  &lt;mirrors&gt;
    &lt;mirror&gt;
      &lt;id&gt;internal-repository&lt;/id&gt;
      &lt;name&gt;Maven Repository Manager running on repo.mycompany.com&lt;/name&gt;
      &lt;url&gt;http://repo.mycompany.com/proxy&lt;/url&gt;
      &lt;mirrorOf&gt;*&lt;/mirrorOf&gt;
    &lt;/mirror&gt;
  &lt;/mirrors&gt;
  ...
&lt;/settings&gt;

高级配置

mirrorOf还支持更高级的语法,示例如下:

作用
*匹配所有仓库
external:*匹配所有仓库,除了localhost仓库和基于文件的仓库
repo,repo1匹配repo,repo1两个仓库
*,!repo1匹配所有仓库,处理repo1

常见用法

假设项目的pom中的仓库配置如下:

<repositories>
    <repository>
        <id>central</id>
        <url>https://repo1.maven.org/maven2</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>cloudera.repo</id>
        <url>https://repository.cloudera.com/artifactory/cloudera-repos</url>
        <name>Cloudera Repo</name>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>hortonworks.repo</id>
        <url>https://repo.hortonworks.com/content/repositories/releases</url>
        <name>Hortonworks Repo</name>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
</repositories>

用法一

使用阿里云maven镜像替换central仓库,其他不变,配置如下:

<settings>
  ...
  <mirrors>
    <mirror>
      <id>aliyunmaven</id>
      <name>Aliyun Maven</name>
      <url>https://maven.aliyun.com/repository/public</url>
      <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>
  ...
</settings>

用法二

除了cloudera.repo和hortonworks.repo,都使用阿里云镜像,配置如下:

<settings>
  ...
  <mirrors>
    <mirror>
      <id>aliyunmaven</id>
      <name>Aliyun Maven</name>
      <url>https://maven.aliyun.com/repository/public</url>
      <mirrorOf>*,!cloudera.repo,!hortonworks.repo</mirrorOf>
    </mirror>
  </mirrors>
  ...
</settings>

参考:https://maven.apache.org/guides/mini/guide-mirror-settings.html

到此这篇关于Maven仓库镜像配置的方法实现的文章就介绍到这了,更多相关Maven仓库镜像配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 关于log4j日志扩展---自定义PatternLayout

    关于log4j日志扩展---自定义PatternLayout

    这篇文章主要介绍了关于log4j日志扩展---自定义PatternLayout,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 解读JAVA中的位运算操作

    解读JAVA中的位运算操作

    这篇文章主要介绍了JAVA中的位运算操作,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • java调用webService接口的代码实现

    java调用webService接口的代码实现

    本文主要介绍了java调用webService接口的代码实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • SpringBoot实现简单的登录注册的项目实战

    SpringBoot实现简单的登录注册的项目实战

    本文主要介绍了SpringBoot实现简单的登录注册的项目实战,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • Java中ArrayList和LinkedList的遍历与性能分析

    Java中ArrayList和LinkedList的遍历与性能分析

    这篇文章主要给大家介绍了ArrayList和LinkedList这两种list的五种循环遍历方式,各种方式的性能测试对比,根据ArrayList和LinkedList的源码实现分析性能结果,总结结论。相信对大家的理解和学习具有一定的参考价值,有需要的朋友们下面跟着小编一起来学习学习吧。
    2016-12-12
  • IDEA离线安装maven helper插件的图文教程

    IDEA离线安装maven helper插件的图文教程

    本文通过图文并茂的形式给大家介绍IDEA离线安装maven helper插件,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2021-08-08
  • maven插件maven-assembly-plugin打包归纳文件zip/tar使用

    maven插件maven-assembly-plugin打包归纳文件zip/tar使用

    java项目运行的文件需要jar或者war格式,同时还需要使用Java命令,本文主要介绍了maven插件maven-assembly-plugin打包归纳文件zip/tar使用,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • Springboot 实现数据库备份还原的方法

    Springboot 实现数据库备份还原的方法

    这篇文章主要介绍了Springboot 实现数据库备份还原的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Hadoop源码分析三启动及脚本剖析

    Hadoop源码分析三启动及脚本剖析

    本篇是Hadoop源码分析系列文章第三篇,主要介绍Hadoop启动以及脚本的剖析,后续本系列文章会持续更新,有需要的朋友可以借鉴参考下
    2021-09-09
  • SpringBoot接口数据加解密实战记录

    SpringBoot接口数据加解密实战记录

    现今对于大多数公司来说,信息安全工作尤为重要,下面这篇文章主要给大家介绍了关于SpringBoot接口数据加解密的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07

最新评论