代码之家  ›  专栏  ›  技术社区  ›  drew

在pom.xml文件中设置maven本地存储库位置?

  •  1
  • drew  · 技术社区  · 6 年前

    可以在settings.xml中设置maven本地存储库:

    <localRepository>${user.home}/.m2/repository</localRepository>
    

    可以在命令行上设置maven本地存储库:

    mvn clean install -Dmaven.repo.local=repository
    

    是否可以在pom.xml本身中指定?

    注意:我想在pom.xml中指定一种方法,在这里maven最初搜索工件(默认情况下, ~/.m2/repository )maven通过 mvn install (默认情况下, ~/.m2/仓库 ).

    1 回复  |  直到 6 年前
        1
  •  4
  •   juzraai    6 年前

    根据 Maven POM Reference 以及 Guide to using multiple repositories ,可以在中指定存储库 pom.xml 我也是。

    有两种不同的方法可以指定多个存储库的使用。第一种方法是在POM中指定要使用的存储库

    根据 Introduction to repositories ,您可以使用 file:// 协议 <url> .

    远程存储库是指任何其他类型的存储库,通过各种协议(如file:/、http:/)进行访问。

    所以下面的工作:

    <project>
      ...
      <repositories>
        <repository>
          <id>example-repo</id>
          <name>Example Repository</name>
          <url>file://path/to/your/local/repository</url>
        </repository>
      </repositories>
    </project>
    

    编辑:

    根据您的注释和编辑,您需要覆盖 pom.xml文件 .

    我找到了一个 topic about disabling central repository ,并尝试了答案,但Maven仍然使用 settings.xml . This answer 在另一篇文章中解释了为什么:

    设置.xml 允许您重写中的定义 pom.xml文件 ,而不是相反。

    因此,似乎不可能从 pom.xml文件 ,Maven将在配置为 设置.xml 并将安装到该文件中指定的Maven home。