Maven Settings.xml 的语法详解

Maven 的 settings.xml 文件是 Maven 的一个配置文件,包含了影响 Maven 运行方式的全局配置信息。例如,你可以在 settings.xml 文件中配置本地仓库的位置,连接的远程仓库,以及代理设置等。

settings.xml 文件的位置有两个,一个是 Maven 安装目录的 conf 文件夹下,这个是全局的 settings.xml;另一个位于用户的 .m2 目录下,这是用户级别的 settings.xml。如果两个位置都有 settings.xml 文件,那么用户级别的配置会覆盖全局的配置。

下面我将详细介绍 settings.xml 文件的各个部分。

  1. <localRepository>: 本地仓库是 Maven 保存所有项目对象模型 (POM)、插件和依赖的库。默认情况下,它在用户的家目录下的 .m2/repository 目录。但是,你可以通过 <localRepository> 标签改变它的路径。例如:
<settings>
 <localRepository>/path/to/repo</localRepository>
</settings>
  1. <proxies>: 如果你的网络环境需要使用代理来访问互联网,你可以在 <proxies> 标签里配置代理服务器的信息。例如:
<settings>
 <proxies>
 <proxy>
 <id>myproxy</id>
 <active>true</active>
 <protocol>http</protocol>
 <host>proxy.example.com</host>
 <port>8080</port>
 <username>proxyuser</username>
 <password>proxypass</password>
 <nonProxyHosts>www.google.com|*.example.com</nonProxyHosts>
 </proxy>
 </proxies>
</settings>
  1. <servers>: 在 <servers> 标签中,你可以配置连接到 Maven 仓库时的身份验证信息,比如用户名和密码。例如:
<settings>
 <servers>
 <server>
 <id>my.server</id>
 <username>myuser</username>
 <password>mypass</password>
 </server>
 </servers>
</settings>
  1. <mirrors>: Maven 镜像可以提供和远程仓库相同的资源,但是由于网络或者地理位置的原因,访问镜像服务器的速度可能会更快。你可以在 <mirrors> 标签中配置镜像服务器的信息。例如:
<settings>
 <mirrors>
 <mirror>
 <id>alimaven</id>
 <name>aliyun maven</name>
 <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
 <mirrorOf>central</mirrorOf>
 </mirror>
 </mirrors>
</settings>
  1. <profiles>: 你可以在 <profiles> 标签中定义一些环境特定的配置,然后在构建时选择使用哪个 profile。每个 profile 包含一组配置信息,如属性值、插件仓库、依赖仓库等。
作者:JerryWang_汪子熙原文地址:https://segmentfault.com/a/1190000044398852

%s 个评论

要回复文章请先登录注册