zoukankan      html  css  js  c++  java
  • maven的setting配置文件中mirror和repository的区别

    repository就是个仓库

    maven里有两种仓库,本地仓库和远程仓库。远程仓库相当于公共的仓库,大家都能看到。

    本地仓库是你本地的一个山寨版,只有你看的到,主要起缓存作用。

    当你向仓库请求插件或依赖的时候,会先检查本地仓库里是否有。如果有则直接返回,否则会向远程仓库请求,并做缓存。

    远程仓库可以在工程的pom.xml文件里指定。

    如果没指定,默认会到http://repo1.maven.org/maven2这个地方去请求插件和依赖包。

    <repository>
        <snapshots>
        <enabled>false</enabled>
        </snapshots>
        <id>central</id>
        <name>Maven Repository Switchboard</name>
        <url>http://repo1.maven.org/maven2</url>
     </repository>

    本地仓库默认在你本地的用户目录下的.m2/repository目录下。

    mirror就是镜像,主要提供一个方便地切换远程仓库地址的途径。

    比如,上班的时候在公司,用电信的网络,连的是电信的仓库。

    回到家后,是网通的网络,我想连网通的仓库,就可以通过mirror配置,统一把我工程里的仓库地址都改成联通的,而不用到具体工程配置文件里一个一个地改地址。

    mirror的配置在.m2/settings.xml里。如:

    <localRepository>C:UsersAdministrator.m2
    epository</localRepository>

    <servers>    
        <server>    
            <id>releases</id>    
            <username>admin</username>    
            <password>admin123</password>    
        </server>    
        <server>    
            <id>snapshots</id>    
            <username>admin</username>    
            <password>admin123</password>    
        </server>    
    </servers>    

    <mirrors>     
        <mirror>     
            <id>releases</id>     
            <mirrorOf>*</mirrorOf>     
            <url>http://192.168.8.169:8081/nexus/content/groups/public/</url>     
        </mirror>    
        <mirror>     
            <id>snapshots</id>     
            <mirrorOf>*</mirrorOf>     
            <url>http://192.168.8.169:8081/nexus/content/groups/public/</url>     
        </mirror>   
        <mirror>
            <id>nexus-aliyun</id>
            <name>Nexus aliyun</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
            <mirrorOf>central</mirrorOf>
        </mirror>
    </mirrors> 

    这样的话,就会给上面id为central的远程仓库做了个镜像。

    以后向central这个仓库发的请求都会发到http://uk.maven.org/maven2而不是http://repo1.maven.org/maven2了。

    <mirrorOf>central</mirrorOf>里是要替代的仓库的id。

    如果填*,就会替代所有仓库。

  • 相关阅读:
    python学习笔记 day37 Manager (IPC机制----进程之间互相通信)
    python学习笔记 day37 管道Pipe (IPC机制----进程之间互相通信)
    python学习笔记 day37 生产者消费者模型
    python学习笔记 day36 队列(IPC机制----进程之间互相通信)
    HDU 3068 最长回文
    CodeForces Round #555 Div.3
    2016湖南省赛 [Cloned]
    HDU 3486 Interviewe
    CodeForces Round #554 Div.2
    POJ 1050 To the Max
  • 原文地址:https://www.cnblogs.com/yifanSJ/p/9302508.html
Copyright © 2011-2022 走看看