Maven(10)——Maven相关配置说明

目录

一、配置级别

1、用户级别:User Level

2、全局级别:Global Level

3、如果两者都存在,它们的内容将被合并,并且用户范围的配置优先。

二、顶层元素预览

三、各元素说明

1、单值配置

2、PluginGroups插件组

3、proxies代理配置

4、servers服务器


官方文档:https://maven.apache.org/settings.html

一、配置级别

Maven的配置文件setting.xml有两种配置级别:用户级别和全局配置级别。

1、用户级别:User Level

用户级别的setting文件在${user.home}/.m2/settings.xml.

2、全局级别:Global Level

全局级别的setting文件存在Maven的解压安装目录下:D:\apache-maven-3.6.0\conf\settings.xml.

3、如果两者都存在,它们的内容将被合并,并且用户范围的配置优先。

二、顶层元素预览

<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>

三、各元素说明

1、单值配置

  • localRepository:构建系统的本地存储库的路径,默认值为$ {user.home} /.m2 / repository。
  • interactiveMode:交互模式,Maven是否应该尝试与用户输入交互,默认是true,如果不是false。
  • offline:是否每次编译都去查找远程中心库, 如果此构建系统应以离线模式运行,则为true,默认为false。

2、PluginGroups插件组

这个元素包含了一系列pluginGroup元素,每个又包含了一个groupId。当一个plugin被使用,而它的groupId没有被提供的时候,这个列表将被搜索。这个列表自动的包含了org.apache.maven.plugins和org.codehaus.mojo。

3、proxies代理配置

代理配置,默认第一个proxy配置起效

 <proxies>
    <proxy>
      <id>myproxy</id>
      <active>true</active>
      <protocol>http</protocol>
      <host>proxy.somewhere.com</host>
      <port>8080</port>
      <username>proxyuser</username>
      <password>somepassword</password>
      <nonProxyHosts>*.google.com|ibiblio.org</nonProxyHosts>
    </proxy>
  </proxies>
  • id:此代理的唯一标识符。这用于区分代理元素。
  • active:如果此代理处于活动状态,则为true。这对于声明一组代理很有用,但一次只能有一个代理。
  • protocolhostport:protocol://host:port,独立元素。
  • usernamepassword:这些元素显示为一对,表示对此代理服务器进行身份验证所需的登录名和密码。
  • nonProxyHosts:这是不应代理的主机列表。列表的分隔符是代理服务器的预期类型; 上面的示例是管道分隔的 - 逗号分隔也很常见。

4、servers服务器

用来下载和部署的仓库是用POM中的repositories和distributionManagement元素来定义的。但是某些配置例如username和password就不应该随着pom.xml来分配了。这种类型的信息应该保存在构建服务器中的settings.xml中。

<servers>
    <server>
      <id>server001</id>
      <username>my_login</username>
      <password>my_password</password>
      <privateKey>${user.home}/.ssh/id_dsa</privateKey>
      <passphrase>some_passphrase</passphrase>
      <filePermissions>664</filePermissions>
      <directoryPermissions>775</directoryPermissions>
      <configuration></configuration>
    </server>
  </servers>
  • id:这是与Maven尝试连接的存储库/镜像的id元素匹配的服务器的ID (不是要登录的用户的ID 
  • usernamepassword:这些元素显示为一对,表示对此服务器进行身份验证所需的登录名和密码。
  • privateKeypassphrase:与前两个元素一样,如果需要,该对指定私钥的路径(默认为$ {user.home} / .ssh / id_dsa)和密码。该密码和密码的元素可能在将来被外部化,但现在他们必须设置在纯文本的settings.xml文件。
  • filePermissionsdirectoryPermissions:在部署时创建存储库文件或目录时,这些是要使用的权限。每个的合法值是对应于* nix文件权限的三位数字,例如664或775。

注意:如果使用私钥登录服务器,请确保省略<password>元素。否则,密钥将被忽略。

5、镜像

 <mirrors>
    <mirror>
      <id>planetmirror.com</id>
      <name>PlanetMirror Australia</name>
      <url>http://downloads.planetmirror.com/pub/maven2</url>
      <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>
  • idname: 此镜像的唯一标识符和用户友好名称。 id用于区分镜像元素,并在连接到镜像时从<servers>部分选择相应的凭据。
  • url:此镜像的基本URL。构建系统将使用此URL连接到存储库而不是原始存储库URL。
  • mirrorOf: 这是镜像的存储库的id。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值