MAVEN setting.xml配置文件详解

Maven 详细配置:Maven settings 配置文件的详细说明 Maven settings 配置文件是 Maven 环境的重要组成部分,它用于定义用户特定的配置信息和全局设置,例如本地仓库路径、远程仓库镜像、代理服务器以及认证信息等。settings 文件分为全局配置文件(settings.xml)和用户配置文件(用户目录下的 .m2/settings.xml),它们分别影响 Maven 的全局行为和当前用户的个性化配置。通过合理配置 settings 文件,开发者可以优化构建性能、提升依赖解析效率,并满足企业开发环境中的特殊需求。本篇内容将深入解析 settings 阅读详情

1、setting.xml文件位置

  • 用户配置:${USER.HOME}/.m2/settings.xml
  • 全局配置:${MAVEN_HOME}/conf/settings.xml
  • 注意:用户配置优于全局配置,默认使用的是用户配置

2、setting.xml文件作用

  • 用于配置代理、远程仓库镜像、jar包部署服务器等信息

setting.xml配置项

配置项说明
localRepository本地仓库,默认为${USER.HOME}/.m2/repository
interactiveMode交互模式,默认为true
usePluginRegistry是否使用plugin是否使用plugin-registry.xml文件管理插件版本,默认为false
offline是否使用离线模式,默认为false
proxies/proxy*配置代理,通知给无法访问远程仓库的用户使用
servers/server*服务器身份认证,比如当deploy一个包到远程仓库时,需要权限认证
repositories/repository*用于配置远程仓库信息
mirrors/mirror*远程仓库镜像配置,会覆盖远程仓库
profiles/profile*用于配置不同环境的差异文件
activeProfiles/activeProfile*手动激活的默认差异文件
pluginGroups/pluginGroup*当插件的groupId没有显式提供,从此插件的group中寻找需要的插件

详细配置说明

  • 代理(proxies/proxy*):
<proxies>
        <proxy>
            <!-- 代理标识 -->
            <id>testProxy</id>
            <!-- 是否激活,默认是true -->
            <active>true</active>
            <!-- 代理协议 -->
            <protocol>http</protocol>
            <!-- 用户名 -->
            <username>wang</username>
            <!-- 密码 -->
            <password>123</password>
            <!-- 端口 -->
            <port>8099</port>
            <!-- 主机 -->
            <host>proxy.xxx.com</host>
            <!-- 不需要代理的主机 -->
            <nonProxyHosts>*.xx1.com|*.xx2.com</nonProxyHosts>
        </proxy>
</proxies>
  • 服务器认证(servers/server*):支持用户名/密码,公钥/私钥两种认证方式
<servers>
        <server>
            <!-- 服务标识 -->
            <id>server1</id>
            <!-- 用户名 -->
            <username>wang</username>
            <!-- 密码 -->
            <password>123</password>
        </server>
        <server>
            <id>server2</id>
            <privateKey>wang</username>
            <passphrase>456</passphrase>
        </server>
</servers>
  • 镜像(mirrors/mirror*):用配置覆盖一个或者多个仓库的配置
  • <mirrorOf>元素:
    • *= everything
    • external:* = everything not on the localhost and not file based.
    • repo,repo1 = repo or repo1
    • *,!repo1 = everything except repo1
<mirrors>
        <mirror>  
            <!-- 镜像id,唯一标识 -->      
            <id>central-mirror</id>
            <!-- 镜像名称 -->
            <name>Maven China Mirror</name>
            <!-- 镜像地址 -->        
            <url>http://search.maven.org/#browse</url>    
            <!-- 这个是谁的镜像,覆盖哪个仓库的配置 -->    
            <mirrorOf>central</mirrorOf>        
        </mirror> 
</mirrors>
  • 环境差异文件(profiles/profile*):
<profiles>
        <!--通过某些条件匹配来激活不同<profile>,如jdk、os、属性和属性值等等-->
        <profile>
            <!-- 唯一标识id -->
            <id>jdk-1.6</id>
            <!-- 激活条件 -->
            <activation>
                <jdk>1.6</jdk>
            </activation>
            <!-- 键值对属性 -->
            <properties>
                <property.key>property.value</property.key>
         <!--
            maven支持使用占位符的方式设置或获取值
            1.env:操作系统环境变量
            2.project.x:当前project的属性
            3.setttings.x:对应settings.xml文件的属性
            4.properties文件中的属性(redis.ip=10.11.12.13):redis.ip
            5.x:<properties>中设置的属性
          -->
                <anykey>${env.path}</anykey>
			</properties>
            <!-- 仓库配置 -->
            <repositories>
                <repository>   
                    <id>仓库id</id>    
                    <name>仓库名称</name>
                    <url>仓库url</url>
                    <layout>在Maven 2/3中都是default,只有在Maven 1.x中才是legacy,默认也是default</layout>
                    <!-- 发布的稳定版本 -->
                    <releases>
                        <checksumPolicy>当组件校验失败时,warn或fail</checksumPolicy>
                        <enabled>是否使用此库下载组件</enabled>
                        <updatePolicy>当组件在本地不存在时的更新策略:always、daily(default)、interval:xx(in minutes)、never</updatePolicy>
                    </releases>
                    <!-- 快照版本,注释同上 -->
                    <snapshots>
                        <checksumPolicy></checksumPolicy>
                        <enabled></enabled>
                        <updatePolicy></updatePolicy>
                    </snapshots>
                </repository>
            </repositories>
            <!-- 插件仓库 -->
            <pluginRepositories>
                <pluginRepository>
                    <!-- 配置与repository类似 -->
                </pluginRepository>
            </pluginRepositories>
        </profile>
</profiles>
<!--激活某个差异文件(activeProfiles/activeProfile*)-->
<!-- 指定某个profile生效 -->
<activeProfiles>
    <activeProfile>对应profile id</activeProfile>
</activeProfiles>
  • 当插件groupId没有显示提供,使用此groupId进行查找(pluginGroups/pluginGroup*):
<pluginGroups>
        <!-- 当插件groupId没有显示提供,使用此groupId查找插件 -->
        <!-- 官网:(Many) List of groupIds to search for a plugin when that plugin groupId is not explicitly provided. -->
        <pluginGroup>org.mortbay.jetty</pluginGroup>
        <pluginGroup>org.codehaus.cargo</pluginGroup>
</pluginGroups>
maven settings配置详解 maven的setting配置文件详解。。。。 立即下载

相关推荐

配置 maven 的 setting.xml 文件

改为使用国内的阿里镜像

Maven 进阶学习指南---setting详解

当我们在开发项目时,有时需要用到外部依赖组件,例如当我们需要 Json 序列化的时候需要用到 FastJson 组件,我们可以通过下载对应 jar 包加载到项目中。但当一个大的项目同时需要依赖各种各样的外部服务,就存在着配置繁琐、依赖冲突等问题,因此可以通过 maven 来完成对应的依赖管理功能全局 settings.xml 是 maven 的全局配置文件,一般位于 ${maven.home}/conf/settings.xml,即 maven 文件夹下的 conf 中。

码农崛起 1万+

英飞凌ADS开发环境搭建全流程:从安装到第一个程序烧录

本文详细介绍了英飞凌ADS开发环境搭建的全流程,包括环境准备、ADS安装与配置、MemTools烧录技巧等关键步骤。针对嵌入式开发者,特别提供了从安装到第一个程序烧录的实战指南,涵盖常见问题解决方案和优化建议,帮助开发者快速上手英飞凌AURIX系列微控制器的开发工作。

qsc901234的博客 333

全网最硬核解析!Maven进阶学习全解

当我们在开发项目时,有时需要用到外部依赖组件,例如当我们需要Json序列化的时候需要用到FastJson组件,我们可以通过下载对应jar包加载到项目中。但当一个大的项目同时需要依赖各种各样的外部服务,就存在着配置繁琐、依赖冲突等问题,因此可以通过maven来完成对应的依赖管理功能。全局 settings.xml 是 maven 的全局配置文件,一般位于${maven.home}/conf/settings.xml,即maven文件夹下的conf中。用户 setting是maven的用户配置文件。

wdj_yyds的博客 1万+

CPRI原理及应用--帧结构

对于CPRI 控制字,协议将1个超帧(256基本帧)的控制数据划分为一个“子通道”,将子通道内超帧内的控制字进行行列划分,分为4列X64行,每64个基本帧组成1列。如下图所示。每个Xs子通道内Ns的定义基本相同,在做控制字设计时,主要已Xs和Ns和X.Y.Z开展控制字映射。

u014035968的博客 2325

activiti(六):activiti7的数据表和字段的解释

介绍activiti7的数据表和各表字段的含义,对于学习activiti7工作流引擎的运行过程很有帮助!

no problem的博客 1万+

Maven之pom.xml与setting.xml配置文件详解

本文系统介绍了Maven的核心配置与使用,主要包括: Maven常用命令:如编译、测试、打包等,以及跳过测试、指定端口等参数设置; POM文件配置详解:包括基本配置、依赖管理、构建配置、环境设置等模块; settings.xml配置:涵盖本地仓库设置、镜像配置、服务器认证、profile管理等; 实用技巧:如处理依赖冲突、版本升级、本地仓库文件管理、引入本地jar包等。 文章还对比了POM与settings配置的优先级,并详细说明了仓库、镜像、profile等核心概念的使用场景和配置方法,为Maven项目的

晨港飞燕的专栏 2万+

华为主题包HWT从入门到排障:下载、导入、修改与兼容性指南

手机主题是很多用户个性化设备的起点,华为手机的主题文件以HWT格式封装,本质上是一种结构特殊的ZIP压缩包,内部包含壁纸、图标、字体和XML配置。了解HWT的目录结构与系统版本兼容性,能帮助用户避开导入失败、秒回默认等常见问题。本文从HWT的基本原理讲起,梳理了安全下载渠道、三种导入方式、应用失败的系统性排查思路,并介绍了解包修改壁纸与字体的方法。无论是普通用户还是进阶玩家,掌握这些技术细节都能更从容地在EMUI与HarmonyOS环境下管理自己的主题资源。

weixin_31155097的博客 355

maven配置文件setting.xml、pom.xml

maven项目配置文件maven项目主要的配置文件有setting.xml、pom.xml两个、setting.xml配置maven自身的一些设置,全局性的配置,,如maven仓库地址等。pom.xml配置项目中的一些设置,如项目所需的jar包等。下文以setting为例详解文档内容。setting.xml文档详解 setting.xml可能存储路径: Maven安装路径: ${maven.hom

1006346386@qq.com 758

5种主流触觉传感器对比:GelSight、DIGIT、Taxim、GelSlim和TACTO怎么选?

本文深度对比了GelSight、DIGIT、Taxim、GelSlim和TACTO五种主流触觉传感器的技术原理与应用场景。针对机器人及VR项目的选型需求,文章从光学与电子传感的技术分野出发,分析了各传感器在分辨率、响应速度、集成难度和成本上的核心差异,并提供了从需求出发的实战选型决策框架,帮助开发者找到最适合的触觉解决方案。

weixin_29268637的博客 694

【CAD二次开发】炸开所有的嵌套块

代码】【CAD二次开发】炸开所有的嵌套块。

1513

idea设置maven配置文件setting.xml的位置

 

风情 11万+

通过python+openCV实现对图片中箭头方向的判断

摘要: 针对YOLOv8算法在箭头方向识别效果不佳的问题,提出了一种基于OpenCV的解决方案。该方法通过图像预处理、轮廓分析、几何特征提取(凸包、质心、外接矩形)和方向向量计算,准确判断箭头的上下左右方向。代码示例展示了从图像读取到方向识别的完整流程,并提供了优化建议(如调整二值化阈值、处理多轮廓)。该方案在Windows11+Python3.12+OpenCV环境下验证有效,适用于需要简单几何特征分析的箭头方向检测场景。

AnChenliang_1002的博客 702

Maven配置文件setting.xml详解

注:本文来源于:大话JAVA的那些事 《Maven配置文件setting.xml详解》<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-insta...

weixin_30919571的博客 121

通用抓取算法AnyGrasp(Graspnet)——本地部署并测试自定义输入数据

背景:GraspNet在数据采集方面,首先将相机固定到机械臂末端,对同一个场景拍摄256个不同的角度,同时场景中的每个物体都会提前采集好3D模型,之后将其投射到仿真环境中,在仿真环境中,对抓取位姿进行打标签,如此完成数据的采集。在运行官方的测试示例时,使用的是路径下的输入数据,可以分析下。color.png(输入):rgb图像(输出):输出的生成抓取位姿的图像depth.png(输入):和当前rgb图像对应的深度图像(保存格式是单通道uint16)meta.mat。

boss-dog 1327

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

maven的setting.xml配置文件详解(中文)

maven的setting.xml配置文件详解(中文) <?xml version="1.0" encoding="UTF-8"?> <!--本地仓库。该值表示构建系统本地仓库的路径。其默认值为${user.home}/.m2/repository。 --> <localRepository>usr/local/maven</localRepo...

weixin_43186630的博客 249

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

IntelliJ IDEA 2021设置maven配置文件setting.xml的位置

原文链接 idea设置maven配置文件setting.xml的位置(IntelliJ IDEA 2021.2 (Ultimate Edition)) 第一步选择File–>Settings…打开Setting对话框。 第二步展开Build, Execution, Deployment–>Build Tolls–>Maven

6923

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Maven 配置文件 setting.xml 的读取顺序

Maven 配置文件 setting.xml 的读取顺序 打开终端工具,运行 mvn 命令时, setting 配置文件的读取规则: 1、优先从 ${user}.m2 目录下读取 setting.xml 2、当 ${user}.m2 目录下不存在 setting.xml 时,从 ${M2_HOME}\conf 目录下读取 3、IDEA 中即使指定了 setting.xml 文件,在 IDEA te...

happyfreeangel的博客 2100

Mac版IntelliJ内置Maven的配置文件setting.xml在哪里?

Mac版IntelliJ(2020.3)已经内置了Maven 3.6.3版本,不再需要我们手工来集成。 但是,Maven自带的配置文件setting.xml在哪里呢? 东找西翻之后总算找到了,原来在这里: /Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven3/conf/ 参照文档 IntelliJ IDEA 自带Maven插件找不到settings.xml配置文件 ...

cutepat的博客 5819

Maven项目setting.xml配置文件详解

能看懂英文当然更好,地址:配置文件官方说明https://maven.apache.org/settings.htmlMaven项目的setting.xml文件,主要分为两个: 用户的安装: ${user.home}/.m2/settings.xml 当前用户范围的配置文件; Maven安装: maven.conf/settings.xml全局范围配置文件,修改后将影响本机所有的用户配

asdf_1024的博客 2万+

MAVEN配置文件Setting.xml学习笔记

题记:对于maven一直是“拿来主义”,但是遇到问题就有点傻逼了,今天就遇到一个maven打包的缺少插件的问题,于是整理一片学习笔记。2020.3.25 一、Setting.xml干什么用的? 不管人是好是坏,都有脑子,它来控制你是打老婆,还是抢劫,还是当护士碎尸主治医师,setting.xml粗略的可看作是maven的脑子,里边配置了maven要从哪里拉去jar包,以及你本地的仓库...

养只狗名叫猫 618

IDEA设置maven仓库和setting.xml配置文件

IDEA设置maven仓库和setting.xml配置文件

xiexie0705的博客 1146

Maven之 setting.xml配置文件详解

setting.xml配置文件 maven的配置文件settings.xml存在于两个地方: 1.安装的地方:${M2_HOME}/conf/settings.xml 2.用户的目录:${user.home}/.m2/settings.xml 前者又被叫做全局配置,对操作系统的所有使用者生效;后者被称为用户配置,只对当前操作系统的使用者生效。如果两者都存在,它们的内容将被合并,并且用户范围的settings.xml会覆盖全局的settings.xml。 Maven安装后,用户目录下不会自动生成s.

qq_37675011的博客 8926

Maven配置文件(setting.xml)属性解析

前置信息 Maven 版本:apache-maven-3.5.2 Nexus 信息:nexus2、nexus3 镜像仓库:如果仓库 X 可以提供仓库 Y 存储的所有的内容,那么仓库 X 就可以说是 仓库 Y 的镜像(也就是说能从仓库 Y 获取的内容,从仓库 X 也能获取) 属性解析 setting <setting>setting 文件的根元素</setting> localRepository <localRepository>本地仓库</localRepos

小布丁的博客 4979
上一篇: linux免密登录
下一篇: MAVEN超详细教程
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值