Maven settings.xml 文件属于哪个文件夹?

Posted

技术标签:

【中文标题】Maven settings.xml 文件属于哪个文件夹?【英文标题】:Which folder does the Maven settings.xml file belong in? 【发布时间】:2015-11-28 02:43:15 【问题描述】:

好的,所以我一直在 SE 中寻找答案,发现了这条评论和其他几个类似的评论

当 Maven 尝试构建项目时,它会在您的本地存储库中查找(默认为 ~/.m2/repository,但您可以通过更改 ~/.m2/settings.xml 中的值来配置它)以找到任何在 pom.xml 中定义的依赖项、插件或报告。如果在您的本地存储库中找不到足够的工件,它将查找所有配置的外部存储库,从默认的 http://repo1.maven.org 开始。`

所以我的问题是 settings.xml 文件应该放在哪里?

项目的前任开发人员告诉我,它位于 maven\conf\settings.xml 中,这是我们唯一的 settings.xml 文件所在的位置。这与.m2/settings.xml的上述注释相矛盾。

请说明此文件所在的位置以及它所在的位置是否有所不同。

【问题讨论】:

看看***.com/questions/1261215/…当然可以通过mvn install -s /path/to/my/settings.xml指定自己的位置 见Maven settings documentation 【参考方案1】:

两个答案都是正确的。

maven 的基本配置文件在 mvn/conf/settings 内,您可以使用位于 ~.m2/settings.xml 的个人 maven 设置文件添加一些配置(或覆盖基本配置)

【讨论】:

那么这个 /.m2/ 文件夹可以位于任何地方还是必须 /.m2/settings.xml 位置必须在我的 /user/ 文件夹中? 主要是m2_home文件夹,是安装maven的地方。至于您的个人配置,它位于您的用户文件夹中(对于 linux,它将是 /home/Elijah/.m2/settings.xml) 我正在处理的这个项目似乎没有遵循约定,因为包含设置 xml 的 m2 文件夹位于一个文件夹位置,而存储库在其他某个位置关闭。谢谢大家提供这些信息。 这令人困惑。 settings.xml 可以在 pom.xml 旁边并优先于它可能在的其他地方吗?【参考方案2】:

settings.xml 文件可以在 2 个地方找到:

Maven 安装:$maven.home/conf/settings.xml 用户安装:$user.home/.m2/settings.xml

如果两个文件都存在,它们的内容将被合并,用户特定的 settings.xml 占主导地位。

参考:https://maven.apache.org/settings.html

【讨论】:

以上是关于Maven settings.xml 文件属于哪个文件夹?的主要内容,如果未能解决你的问题,请参考以下文章

maven的settings.xml中 server和mirror怎么配

[转]maven全局配置文件settings.xml详解

Maven(四-1) Maven的配置文件settings.xml

Maven入门2-pom.xml文件与settings.xml文件

maven 配置文件 settings.xml pom.xml

Maven中settings.xml的配置项说明精讲