Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何防止Maven 2在远程存储库中搜索特定的本地相关性?_Java_Maven 2_Repository - Fatal编程技术网

Java 如何防止Maven 2在远程存储库中搜索特定的本地相关性?

Java 如何防止Maven 2在远程存储库中搜索特定的本地相关性?,java,maven-2,repository,Java,Maven 2,Repository,如何防止Maven 2在远程存储库中搜索仅在本地存储库中的特定依赖项 设置为存储库管理器 如有必要,添加其他远程代理存储库 添加本地托管存储库(托管在nexus服务器上) 以正确的搜索顺序定义一组存储库,首先使用本地回购协议 将构建更改为指向nexus组url(在settings.xml中使用mirrorOf=*) 运行构建并让nexus管理本地与远程依赖项解决方案 在POM中为远程依赖项或要从本地存储库获取的本地版本使用固定版本号 Maven试图友好地获取没有指定版本号的最新和最好的版本 要快

如何防止Maven 2在远程存储库中搜索仅在本地存储库中的特定依赖项

  • 设置为存储库管理器
  • 如有必要,添加其他远程代理存储库
  • 添加本地托管存储库(托管在nexus服务器上)
  • 以正确的搜索顺序定义一组存储库,首先使用本地回购协议
  • 将构建更改为指向nexus组url(在settings.xml中使用mirrorOf=*)
  • 运行构建并让nexus管理本地与远程依赖项解决方案

  • 在POM中为远程依赖项或要从本地存储库获取的本地版本使用固定版本号

    Maven试图友好地获取没有指定版本号的最新和最好的版本

    要快速修复每次构建时都不等待internet下载的问题,您可以使用mvn-o强制脱机构建,这样就不会浪费时间尝试获取新版本


    @crowne的答案也是一个很好的建议,特别是设置您自己的nexus并确保所有远程回购都配置在那里,这样当某一天回购出现时,您就不会有不愉快的惊喜。

    为了防止Maven检查远程存储库,您可以使用
    -o
    标志。否则,Maven将检查所有快照依赖项是否是最新的。您可以使用依赖关系管理器(如)对依赖关系解析进行细粒度控制。
    pom.xml
    settings.xml
    文件中的还有一个
    updatePolicy
    元素,允许您配置Maven检查更新依赖项的频率

    如何防止Maven 2在远程存储库中搜索仅在本地存储库中的特定依赖项

    事实上Maven不会的除非:

    • 它们是快照依赖项,在这种情况下,这是预期的行为
    • 它们缺少
      .pom
      文件,在这种情况下,您可以提供或生成该文件(请参见下面的问题)
    相关问题

    Maven
    -o
    选项可能就足够了,但我是否可以指示Nexus仅在本地存储库中搜索特定的依赖项?是的,请参阅和以了解详细信息。结果表明,我缺少了Maven试图从远程存储库检索的所有本地依赖项的
    .pom
    文件。