【Maven】Maven settings.xml 配置镜像

                       【Maven】 Maven settings.xml 配置镜像

settings.xml介绍

    从settings.xml的文件名就可以看出,它是用来设置maven参数的配置文件。

    并且,settings.xml是maven的全局配置文件。而pom.xml文件是所在项目的局部配置。

    settings.xml中包含类似本地仓储位置、修改远程仓储服务器、认证信息等配置。

    settings.xml文件一般存在于两个位置:
    (1)全局配置: ${M2_HOME}/conf/settings.xml;

【Maven】Maven settings.xml 配置镜像_第1张图片


    (2)用户配置: user.home/.m2/settings.xml。

【Maven】Maven settings.xml 配置镜像_第2张图片

    配置优先级:
    (1)需要注意的是:局部配置优先于全局配置。
    (2)配置优先级从高到低:pom.xml> user settings > global settings
    (3)如果这些文件同时存在,在应用配置时,会合并它们的内容,如果有重复的配置,优先级高的配置会覆盖优先级低的。

Mirrors

作用:为仓库列表配置的下载镜像列表。


  

......

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

  

Mirror镜像

    mirror相当于一个拦截器,它会拦截maven对remote repository的相关请求,把请求里的remote repository地址,重定向到mirror里配置的地址。

1 没有配置mirror

【Maven】Maven settings.xml 配置镜像_第3张图片

2 配置mirror

【Maven】Maven settings.xml 配置镜像_第4张图片

标签里面放置的是要被镜像的Repository ID。为了满足一些复杂的需求,Maven还支持更高级的镜像配置:

central 
表示该配置为中央仓库的镜像,任何对于中央仓库的请求都会转至该镜像

* 
匹配所有仓库请求,即将所有的仓库请求都转到该镜像上

repo1,repo2 
将仓库repo1和repo2的请求转到该镜像上,使用逗号分隔多个远程仓库。 

*,!repo1 
匹配所有仓库请求,repo1除外,使用感叹号将仓库从匹配中排除。

举例:

      
      奇葩-mirror  
      奇葩-mirror
      https://奇葩/repo/  
      central    
     
 
        
      nexus-aliyun  
      nexus-aliyun
      http://maven.aliyun.com/nexus/content/groups/public  
      *    
    

 以上配置,当maven发现所需的奇葩jar在阿里镜像中没有时,会自动去奇葩镜像中寻找。奇葩jar的确下载下来了。

几个好用Maven 镜像仓库地址

1 阿里云镜像


    nexus-aliyun
    Nexus aliyun
    http://maven.aliyun.com/nexus/content/groups/public/
    central

2 maven官方2号镜像


    repo2
    Mirror from Maven Repo2
    http://repo2.maven.org/maven2/
    central

3 maven的UK镜像


    ui
    Mirror from UK
    http://uk.maven.org/maven2/
    central

4 JBoss 镜像


    jboss-public-repository-group
    central
    JBoss Public Repository Group
    http://repository.jboss.org/nexus/content/groups/public

 

你可能感兴趣的:(【专项】Maven)