Maven没有使用%USERPROFILE%\。m2 \ settings.xml中指定的存储库

时间:2011-07-28 11:35:05

标签: maven repository

我在%USERPROFILE%。m2目录的settings.xml中指定了一个本地存储库。

     <profile>
        <id>mainprofile</id>
        <repositories>
            <repository>
              <url>http://maven/maven2</url>

然而,当我进行maven构建时,它会尝试从maven中央仓库下载

[INFO] Scanning for projects...

Downloading: http://repo1.maven.org/maven2/com/tiger/t-parent/4.0.1/t-parent-4.0.1.pom

[INFO] Unable to find resource 'com.tiger:t-parent:pom:4.0.1' in repository central (http://repo1.maven.org/maven2)

为什么会这样?在我开枪之前请帮忙。

更新:如果我在maven命令行中明确指定选项--settings =%USERPROFILE%\。m2 \ settings.xml,那么它可以正常工作。为什么它不会像它应该的那样自动使用它?

3 个答案:

答案 0 :(得分:1)

仔细检查您的pom是否没有不需要的存储库条目。这些可能看起来像:

<repositories>
  <repository>
    <id>tiger</id>
    <name>tiger repository</name>
    <url>http://some.idiot.put.this.url.here/404.not.found</url>
  </repository>
</repositories>

上面的东西咬我一个。我永远不会忘记这一点。

答案 1 :(得分:0)

你订了镜子吗?

<mirrors>
   <mirror>
     <!--This sends everything else to /public -->
     <id>nexus</id>
     <mirrorOf>*</mirrorOf>
     <url>http://maven/maven2</url>
   </mirror>
</mirrors>

来自Sonatype's Nexus book,更改了网址。

答案 2 :(得分:0)

使用mvn -X找出Maven从哪个不同位置读取settings.xml。交换机激活调试日志记录。只需检查第一行。


您是否移动了Windows桌面的文件夹位置?在这种情况下,user.home可能无法解析为%USERPROFILE%\.m2。有关详细信息,请查看我对Missing Maven .m2 folder的回答。