我在 settigns.xml 文件中添加了代理配置,但 Maven 不使用它,我通过使 settings.xml 文件无效来确认这一点。我运行 maven install 命令来更新设置和全局设置以指向正确的文件,但仍然没有运气。我使用的是maven3.0.4.
尝试使用 -X 选项运行 Maven。它应该作为正在使用的设置文件的调试输出的一部分进行打印。
既然您已经尝试过使用无效文件,我敢打赌您的文件位置有问题。
这几乎是愚蠢的,但它可能会为其他人节省一些时间:如果您使用的是新计算机,请确保显示文件扩展名。否则你的“settings.xml”文件实际上可能是一个“settings.xml.txt”文件......
确保它位于正确的目录中(HOME/.m2/settings.xml)
您可以在此处找到相关路径和代理示例:Maven 代理设置不起作用
当然,参考总是有用的:https://maven.apache.org/settings.html
您是否尝试过使用以下选项:从命令行指定设置文件?
mvn -o –Dmaven.repo.local=$HOME/.my_m2path/repository clean install --settings $HOME/.my_m2path/settings.xml Dcheckstyle.skip=true –DskipTests
一些可能不是必需的选项
由于没有公认的答案,而且我今天遇到了这个问题,并且其他答案证明没有帮助,因为文件路径是正确的:
解决方案是重新启动计算机。不,说真的。重新启动后,maven 保证再次读取 settings.xml 文件并使用您所做的任何更改。
在 Ubuntu 软件包存储库(可能还有其他发行版)中,有两个 Maven 软件包:
maven
和 maven2
。由于某种原因,我安装了 maven2
,这似乎忽略了 settings.xml
中的 ~/.m2
。
作为解决方案,我使用
将其删除sudo apt-get purge maven2
并安装了另一个
sudo apt-get install maven
我找不到可靠的来源,但显然,
maven2
是旧版本(2.x),因为最新的maven有版本3.x,并提供maven
。
我发现即使我使用
--settings
或 -s
命令设置自己的 Maven 设置文件,例如:
mvn -s $MAVEN_HOME/libexec/conf/my-settings.xml clean
Maven 仍在读取默认的全局
setting.xml
解决此问题的两种方法:
setting.xml.bak
目录中的$MAVEN_HOME/conf
。-gs
,因此最终命令变为:mvn -gs $MAVEN_HOME/libexec/conf/my-settings.xml clean
请确保您使用的是您修改过的settings.xml。 例如:您使用IDE的嵌入式maven,它在您的操作系统中使用不同的settings.xml。
您可以在 Eclipse* 中将设置文件的路径设置为:
在菜单栏中转到“窗口”->“首选项”
在首选项对话框中,转到 Maven 部分(左侧)并将其展开。
单击用户设置。
使用浏览添加设置文件的路径。大多数用户的默认位置为 (C:\Users\.m2\settings.xml)。它将显示为灰色,但您需要实际输入位置。
点击更新设置!
您还可以通过单击“首选项”对话框中的 Maven 部分并选中“调试输出”标签上的复选框来启用调试日志和堆栈跟踪以进行调试。
我也面临同样的问题。我删除了文件和文件夹,但 Maven 仍在选择设置。
对我来说,重新启动系统解决了问题。
如果您使用的是 IntelliJ IDEA,请右键单击项目根目录。转到 Maven -> 创建“setting.xml”文件。在那里进行配置。