彻底理解maven + 配置私服 + 阿里云镜像

本文详细解释了Maven中如何配置本地存储库、互动模式、离线模式,以及如何设置阿里云镜像和私服,包括mirrors和profiles的使用,以及仓库访问顺序的控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于maven配置本地私服和镜像的流程,网上一大堆,写的神乎其乎,初学者总是很难理解其中的真正原理,
    笔者通过这篇文章来终结他们;
    
    setting.xml的结构
    
    

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                          https://maven.apache.org/xsd/settings-1.0.0.xsd">  
        <localRepository/>
        <interactiveMode/>
        <offline/>
        <pluginGroups/>
        <servers/>
        <mirrors/>
        <proxies/>
        <profiles/>
        <activeProfiles/>
    </settings>

    
    localRepository: 配置本地存储库的位置,默认为${user.home}/.m2/repository
    interactiveMode: 是否与用户开启交互模式,默认为 true
    offline: 离线模式,默认为 false
    pluginGroups: 比如<pluginGroup>org.eclipse.jetty</pluginGroup>, 默认有org.apache.maven.plugins and org.codehaus.mojo。
    servers: 配置私服的用户名和密码
    mirrors: mirror相当于一个拦截器,它会拦截maven对remote repository的相关请求,把请求里的remote repository地址,重定向到mirror里配置的地址。
    proxies: 代理配置
    profiles: 配置环境
    activeProfiles: 配置默认激活的环境
    

配置镜像

    因为中央仓库在国外,下载比较慢,所以可以配置为定向到阿里云镜像,阿里云镜像里面一般都很全
  

<mirror>
        <id>Nexus-aliyun</id>
        <mirrorOf>central</mirrorOf>
        <name>Nexus aliyun</name>
        <url>https://maven.aliyun.com/repository/central</url>
    </mirror>

    
    这样访问中央仓库时就会定位到阿里云,不再访问中央仓库。如果阿里云仓库没有呢?怎么办?这种情况一般不会出现,因为阿里云仓库的jar很全
    如果你希望如果在阿里云镜像找不到资源时也可以访问问中央仓库,那么阿里云镜像就不能使用<mirrorOf>central</mirrorOf>,可以把阿里云镜像配置成一个私服,
    如<mirrorOf>aliyun</mirrorOf>
    
    关于mirrorOf,如果有同名的mirrorOf,那么只会匹配第一个,
    如果有<mirrorOf>*</mirrorOf>,优先匹配名字完全相同的,其次匹配通配符
    
   

配置profile
    
 

<profile>
        
        <id>nexus-mr</id>
        
        <repositories>
            <!-- 配置的顺序决定了下载 jar 包的顺序 -->
            <!--  maven下载时,按顺序查找,优先找nexus,找不到再找central  -->
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农汉子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值