详解Maven用户的配置settings.xml

时间:2023-03-08 16:35:45
详解Maven用户的配置settings.xml

Maven用户设置

作者其他技术文章

1)Oracle性能优化之查询语句通用原则

2)Redis常用命令

3) SpringCloud入门之常用的配置文件 application.yml和 bootstrap.yml区别

4)#ifndef、#def、#endif说明

这是一份Maven的特定于用户的配置的参考。

包括不应与pom.xml文件一起分发的内容,例如开发人员身份,以及本地设置,如代理信息。

设置文件的默认位置是〜/ .m2 / settings.xml

  1. <settings xmlns="http://maven.apache.org/SETTINGS/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd">
  3. <localRepository/>
  4. <interactiveMode/>
  5. <usePluginRegistry/>
  6. <offline/>
  7. <proxies>
  8. <proxy>
  9. <active/>
  10. <protocol/>
  11. <username/>
  12. <password/>
  13. <port/>
  14. <host/>
  15. <nonProxyHosts/>
  16. <id/>
  17. </proxy>
  18. </proxies>
  19. <servers>
  20. <server>
  21. <username/>
  22. <password/>
  23. <privateKey/>
  24. <passphrase/>
  25. <filePermissions/>
  26. <directoryPermissions/>
  27. <configuration/>
  28. <id/>
  29. </server>
  30. </servers>
  31. <mirrors>
  32. <mirror>
  33. <mirrorOf/>
  34. <name/>
  35. <url/>
  36. <layout/>
  37. <mirrorOfLayouts/>
  38. <id/>
  39. </mirror>
  40. </mirrors>
  41. <profiles>
  42. <profile>
  43. <activation>
  44. <activeByDefault/>
  45. <jdk/>
  46. <os>
  47. <name/>
  48. <family/>
  49. <arch/>
  50. <version/>
  51. </os>
  52. <property>
  53. <name/>
  54. <value/>
  55. </property>
  56. <file>
  57. <missing/>
  58. <exists/>
  59. </file>
  60. </activation>
  61. <properties>
  62. <key>value</key>
  63. </properties>
  64. <repositories>
  65. <repository>
  66. <releases>
  67. <enabled/>
  68. <updatePolicy/>
  69. <checksumPolicy/>
  70. </releases>
  71. <snapshots>
  72. <enabled/>
  73. <updatePolicy/>
  74. <checksumPolicy/>
  75. </snapshots>
  76. <id/>
  77. <name/>
  78. <url/>
  79. <layout/>
  80. </repository>
  81. </repositories>
  82. <pluginRepositories>
  83. <pluginRepository>
  84. <releases>
  85. <enabled/>
  86. <updatePolicy/>
  87. <checksumPolicy/>
  88. </releases>
  89. <snapshots>
  90. <enabled/>
  91. <updatePolicy/>
  92. <checksumPolicy/>
  93. </snapshots>
  94. <id/>
  95. <name/>
  96. <url/>
  97. <layout/>
  98. </pluginRepository>
  99. </pluginRepositories>
  100. <id/>
  101. </profile>
  102. </profiles>
  103. <activeProfiles/>
  104. <pluginGroups/>
  105. </settings>

 

settings-Maven的用户配置文件settings.xml的根元素。

Element

Type

Description

localRepository

 

String

 

Maven本地存储库。

默认值为: $ {user.home} /.m2 / repository

interactiveMode

boolean

Maven是否应该尝试与用户进行交互以进行输入。

默认值为:true。

usePluginRegistry

 

boolean

 

Maven是否应该使用plugin-registry.xml文件来管理插件版本。

默认值为:false。

offline

 

boolean

指示maven是否应该在离线模式下运行。

默认值为:false。

proxies/proxy*

List<Proxy>

(多个)配置不同的代理配置文件。对于使用笔记本电脑或其他移动平台工作的任何人来说,多个代理配置文件可能会派上用场,只需从命令行或从下面的默认部分指定配置文件ID,即可轻松切换整个代理配置。

servers/server*

List<Server>

(很多)Maven配置服务器特定的设置,主要是身份验证方法。这允许基于每个服务器配置身份验证。

mirrors/mirror*

List<Mirror>

(很多)Maven配置存储库的下载镜像。

profiles/profile*

List<Profile>

(许多)Maven构建配置文件的配置,用于根据环境参数调整构建。

activeProfiles/activeProfile*

List<String>

(多个)Maven手动激活的构建配置文件列表,按照应用顺序指定。

pluginGroups/pluginGroup*

List<String>

(很多)Maven当没有明确提供插件groupId时,要搜索插件的groupId列表。

proxy

Maven的用户配置文件settings.xml的<proxy>元素包含代理设置所需的信息。

Element

Type

Description

active

boolean

Maven此代理配置是否为活动配置。

默认值为:true。

protocol

String

Maven代理协议。

默认值为:http。

username

String

Maven代理用户。

password

String

Maven代理密码。

port

int

Maven代理端口。

默认值为:8080。

host

String

Maven代理主机。

nonProxyHosts

String

Maven非代理主机列表(由|分隔)。

id

String

没有说明。

Maven默认值为:default。

server

Maven的用户配置文件settings.xml的<server>元素包含服务器设置所需的信息。

Element

Type

Description

username

String

Maven用于验证的用户名。

password

String

与用户名一起使用的密码进行身份验证。

privateKey

String

Maven用于进行身份验证的私钥位置。

passphrase

String

Maven密码与privateKey一起使用以进行身份验证。

filePermissions

String

Maven文件创建时的权限。

directoryPermissions

String

Maven创建目录时的目录权限。

configuration

DOM

Maven传输层的额外配置。

ID

String

没有说明。
Maven默认值为:default。

mirror

Maven的用户配置文件settings.xml的<mirror>,存储库的下载镜像配置。

Element

Type

Description

mirrorOf

String

Maven镜像存储库的服务器ID,例如“central”。这必须与镜像id不匹配。

name

String

Maven描述镜像的可选名称。

url

String

Maven镜像存储库的URL。

layout

String

Maven镜像存储库的布局。由于Maven 3. 
默认值为:default。

mirrorOfLayouts

String

Maven存储库的布局是镜像的。此值可用于将镜像的使用限制为具有匹配布局的存储库(除了匹配的ID)。自Maven 3. 
默认值为:default,legacy。

id

String

没有说明。
Maven默认值为:default。

profile

Maven的用户配置文件settings.xml的<profile>,构建过程的定义,该过程以某种环境参数为基础。

Element

Type

Description

activation

Activation

Maven条件逻辑将自动触发包含此配置文件。

properties/key=value*

Properties

(很多)Maven特定于此配置文件的扩展配置在这里。内容采用 <property.name> property.value </property.name>的形式

repositories/repository*

List<Repository>

(很多)Maven远程存储库的列表。

pluginRepositories/pluginRepository*

List<Repository>

(很多)Maven用于发现插件的远程存储库列表。

id

String

没有说明。
Maven默认值为:default。

activation

Maven的用户配置文件settings.xml的<activation>,构建运行时环境条件将触发自动包含父构建概要文件。

Element

Type

Description

activeByDefault

boolean

Maven标记此配置文件是否作为默认值处于活动状态。
默认值为:false。

jdk

String

Maven指定在检测到匹配的JDK时将激活此配置文件。

os

ActivationOS

Maven指定在检测到匹配的OS属性时将激活此配置文件。

property

ActivationProperty

Maven指定在指定此System属性时将激活此配置文件。

file

ActivationFile

Maven指定将根据文件的存在激活此配置文件。

os

Maven的用户配置文件settings.xml的<OS>,这是一个激活配置,它将检测操作系统的属性以激活其配置文件。

Element

Type

Description

name

String

Maven用于激活配置文件的OS的名称。

family

String

Maven用于激活配置文件的OS的一般系列(例如'windows')

arch

String

Maven用于激活配置文件的OS的体系结构。

version

String

Maven用于激活配置文件的OS版本。

property

Maven的用户配置文件settings.xml的<Property>,这是用于激活配置文件的属性规范。如果value字段为空,则named属性的存在将激活配置文件,否则它也会对属性值进行区分大小写的匹配。

Element

Type

Description

name

String

Maven用于激活配置文件的属性的名称。

Value

String

Maven用于激活配置文件的属性的值。

file

Maven的用户配置文件settings.xml的<file>,这是用于激活配置文件的文件规范。默认值将是需要存在的文件的位置,如果不存在,则必须运行该配置文件。另一方面,exists将测试文件是否存在,如果存在则将运行配置文件。

Element

Type

Description

missing

String

Maven激活配置文件时应该缺少的文件名。

exists

String

Maven激活配置文件时应存在的文件的名称。

repository

Maven的用户配置文件settings.xml的<repository>,存储库包含与远程存储库建立连接所需的信息

Element

Type

Description

releases

RepositoryPolicy

Maven如何处理从此存储库下载的版本

snapshots

RepositoryPolicy

Maven如何处理从此存储库下载快照

id

String

Maven存储库的唯一标识符。

name

String

Maven友好可读的存储库名称。

url

String

Maven存储库的URL。

layout

String

Maven此存储库用于定位和存储工件的布局类型 - 可以是“遗留”或“默认”。
默认值为:default。

releases

Maven的用户配置文件settings.xml的<releases>,下载策略

Element

Type

Description

enabled

boolean

Maven是否使用此存储库下载此类工件。
默认值为:true。

updatePolicy

String

Maven下载更新的频率 - 可以是“始终”,“每天”(默认),“间隔:XXX”(以分钟为单位)或“从不”(仅当它本地不存在时)。

checksumPolicy

String

Maven验证工件校验和失败时该怎么办 - 警告,失败等。有效值为“失败”或“警告”。

snapshots

Maven的用户配置文件settings.xml的<snapshots>,下载策略

Element

Type

Description

enabled

boolean

Maven是否使用此存储库下载此类工件。
默认值为:true。

updatePolicy

String

Maven下载更新的频率 - 可以是“始终”,“每天”(默认),“间隔:XXX”(以分钟为单位)或“从不”(仅当它本地不存在时)。

checksumPolicy

String

Maven验证工件校验和失败时该怎么办 - 警告,失败等。有效值为“失败”或“警告”。

pluginRepository

Maven的用户配置文件settings.xml的<pluginRepository>,存储库包含与远程存储库建立连接所需的信息

Element

Type

Description

Element

Type

Maven如何处理从此存储库下载的版本

releases

RepositoryPolicy

Maven如何处理从此存储库下载快照

snapshots

RepositoryPolicy

Maven存储库的唯一标识符。

id

String

人类可读的存储库名称。

name

String

Maven存储库的URL。

url

String

Maven此存储库用于定位和存储工件的布局类型 - 可以是“遗留”或“默认”。
默认值为:default。

分类: java,SpringCloud