zoukankan      html  css  js  c++  java
  • maven mirror

    镜像是为了提供更快的服务

    编辑settings.xml配置中央仓库镜像:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <settings>  
      ...  
      <mirrors>  
        <mirror>  
          <id>maven.net.cn</id>  
          <name>one of the central mirrors in china</name>  
          <url>http://maven.net.cn/content/groups/public/</url>  
          <mirrorOf>central</mirrorOf>  
        </mirror>  
      </mirrors>  
      ...  
    </settings>

    该例中,<mirrorOf>的值为central,表示该配置为中央仓库的镜像,任何对于中央仓库的请求都会转至该镜像,用户也可以使用同样的方法配置其他仓库的镜像。

    另外三个元素id,name,url与一般仓库配置无异,表示该镜像仓库的唯一标识符、名称以及地址。类似地,如果该镜像需认证,也可以基于该id配置仓库认证。

    任何需要的构件都可以从私服获得,私服就是所有仓库的镜像。这时,可以配置这样的一个镜像,如例: 

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <settings>  
      ...  
      <mirrors>  
        <mirror>  
          <id>internal-repository</id>  
          <name>Internal Repository Manager</name>  
          <url>http://192.168.1.100/maven2</url>  
          <mirrorOf>*</mirrorOf>  
        </mirror>  
      </mirrors>  
      ...  
    </settings>

    该例中<mirrorOf>的值为星号,表示该配置是所有Maven仓库的镜像,任何对于远程仓库的请求都会被转至http://192.168.1.100/maven2/

    如果该镜像仓库需要认证,则配置一个Id为internal-repository的<server>即可。

    为了满足一些复杂的需求,Maven还支持更高级的镜像配置:

    1.<mirrorOf>*</mirrorOf>

    匹配所有远程仓库。

    2.<mirrorOf>external:*</mirrorOf>

    匹配所有远程仓库,使用localhost的除外,使用file://协议的除外。也就是说,匹配所有不在本机上的远程仓库。

    3.<mirrorOf>repo1,repo2</mirrorOf>

    匹配仓库repo1和repo2,使用逗号分隔多个远程仓库。

    4.<mirrorOf>*,!repo1</miiroOf>

    匹配所有远程仓库,repo1除外,使用感叹号将仓库从匹配中排除。

    需要注意的是,由于镜像仓库完全屏蔽了被镜像仓库,当镜像仓库不稳定或者停止服务的时候,Maven仍将无法访问被镜像仓库,因而将无法下载构件。

  • 相关阅读:
    矩阵问题
    链表问题
    PHP8确认支持JIT,加上Swoole后快到飞起
    五面阿里,顺利拿下PHP研发岗offer,这些技术点你未必掌握了
    php-laravel框架用户验证(Auth)模块解析(一)
    php laravel请求处理管道(装饰者模式)
    Redis常见七种使用场景(PHP实战)
    PHP fastcgi_finish_request 方法
    Linux 下编写一个 PHP 扩展
    创 PHP RSA2 签名算法
  • 原文地址:https://www.cnblogs.com/shenzhichipingguo/p/10268192.html
Copyright © 2011-2022 走看看