【问题标题】:Maven ignores settings.xml fileMaven 忽略 settings.xml 文件
【发布时间】:2012-04-19 23:18:16
【问题描述】:

我在 settigns.xml 文件中添加了代理配置,但 Maven 没有使用它,我通过使 settings.xml 文件无效来确认这一点。我运行了 maven install 命令来更新设置和全局设置以指向正确的文件,仍然没有运气。我正在使用 maven3.0.4。

【问题讨论】:

  • 不要误会我的意思,但你确定将其命名为settings.xml 吗?您询问文件settigns.xml 并且可能您对文件系统中的文件名犯了同样的错误。另一个想法:您的主目录(或 Maven 知道有设置文件的其他位置)是否有您的 settings.xml?
  • 抱歉,Michal,打错字了,我使用的是 maven 包中的默认文件。
  • @Shan,解决了吗?如果是,解决的步骤是什么。谢谢。 (我遇到了同样的错误,并用设置选项更正了它们,想知道你是否做了同样的事情或有其他选择。)

标签: maven maven-2 maven-3


【解决方案1】:

确保它在正确的目录中(HOME/.m2/settings.xml)

您可以在此处找到相关路径和代理示例:Maven proxy settings not working

当然,参考总是有用的:https://maven.apache.org/settings.html

【讨论】:

  • settings.xml在当前目录下没有被maven加载
【解决方案2】:

尝试使用 -X 选项运行 Maven。它应该作为调试输出的一部分打印正在使用的设置文件。

由于您已经尝试过使用无效文件,我敢打赌您的文件位置有问题。

【讨论】:

    【解决方案3】:

    由于没有可接受的答案,而我今天遇到了这个问题,其他答案证明文件路径正确,因此无法解决:

    解决方案是重新启动计算机。不,认真的。重新启动后,maven 保证会再次读取 settings.xml 文件并使用您所做的任何更改。

    【讨论】:

    • 如果您确实需要重新启动才能使程序运行,那么您有一个问题:Windows!
    【解决方案4】:

    对于那些使用 Linux 的人

    在 Ubuntu 软件包存储库(可能还有其他 disto)中,有两个 maven 软件包:maven 和 maven2。出于某种原因,我安装了maven2,这似乎忽略了~/.m2 中的settings.xml。

    作为解决方案,我使用

    将其删除
    sudo apt-get purge maven2
    

    并安装了另一个

    sudo apt-get install maven
    

    发生了什么事?

    我找不到可靠的来源,但显然,maven2 是较旧的版本 (2.x),因为最新的 maven 具有版本 3.x 并与 maven 一起提供。

    【讨论】:

    • 这很有趣。 apt-get install maven2 解析...Maven 2 的版本。;-P
    • 同意;无论如何,它肯定会给人错误的印象!
    【解决方案5】:

    今天遇到了这个问题。我正在编辑我的 USER/.m2 目录中的 settings.xml。在我更改 M2_HOME/conf 中的 settings.xml 后,它起作用了 =)

    【讨论】:

    • M2_HOME/conf/settings.xml 只是 maven 的全局设置。我认为这不是这个问题的关键
    【解决方案6】:

    请确保您使用的是您修改的 settings.xml。 例如:您使用 IDE 的嵌入式 maven,它在您的操作系统中使用不同的 settings.xml。

    【讨论】:

      【解决方案7】:

      您是否尝试过使用这些选项:从命令行指定设置文件?

      mvn -o –Dmaven.repo.local=$HOME/.my_m2path/repository clean install --settings $HOME/.my_m2path/settings.xml  Dcheckstyle.skip=true –DskipTests
      

      一些可能不需要的选项

      1. -o 用于离线(除非您的 m2 中有所有 repos,否则建议跳过此选项)
      2. 跳过测试用于在构建时跳过测试
      3. –Dmaven.repo.local - repo 路径 - 如果您有自己的 repo 路径,则使用此选项
      4. --settings $HOME/.my_m2path/settings.xml(记住设置和路径之间有空格)

      【讨论】:

        【解决方案8】:

        您可以在 Eclipse* 中将设置文件的路径设置为:

        1. 在菜单栏中转到窗口 -> 首选项

        2. 在首选项对话框中,转到 Maven 部分(在左侧)并展开它。

        3. 点击用户设置。

        4. 使用浏览添加设置文件的路径。大多数用户的默认设置是 (C:\Users\.m2\settings.xml)。它将显示为灰色,但您需要实际输入位置。

        5. 点击更新设置!

        您还可以通过单击“首选项”对话框中的 Maven 部分并选中“调试输出”标签来启用调试日志和堆栈跟踪以进行调试。

        • 附注我目前在 Windows 10 x64 上使用 Eclipse(Neon)。

        【讨论】:

          【解决方案9】:

          我也遇到了同样的问题。我删除了文件和文件夹,但 maven 仍在选择设置。

          对我来说,重启系统解决了这个问题。

          【讨论】:

            【解决方案10】:

            说起来几乎是愚蠢的,但它可能会为其他人节省一些时间:如果您使用的是新计算机,请确保显示文件扩展名。否则你的“settings.xml”文件实际上可能是一个“settings.xml.txt”文件......

            【讨论】:

            • 这在某些情况下可能是一个有用的评论,但绝对不应该是一个答案
            【解决方案11】:

            我发现即使我使用--settings 或-s 命令设置自己的maven 设置文件,例如:

            mvn -s $MAVEN_HOME/libexec/conf/my-settings.xml clean

            Maven 仍在读取默认的全局 setting.xml

            有两种方法可以解决这个问题:

            1. 在$MAVEN_HOME/conf 目录中将setting.xml 重命名为setting.xml.bak。
            2. 首选方法将全局添加到命令-gs,因此最终命令变为:

            mvn -gs $MAVEN_HOME/libexec/conf/my-settings.xml clean

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2016-06-05
              • 1970-01-01
              • 1970-01-01
              • 2015-11-28
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多