• 工作记录:maven远程下载的问题


    最近使用maven的时候遇到一个问题,每次构建都从https://repository.apache.org/snapshots仓库下载一些maven-metadata.xml,但是公司的环境又连不上这个地址,导致每次构建都在等待下载超时,非常的慢,痛苦不堪。

    找了一下,settings.xml和pom.xml中都没有配置https://repository.apache.org/snapshots,不知道为什么会去这个仓库下载,一度怀疑使用的IDE,于是从STS,换成原生Eclipse,又试用IDEA,但结果都一样。

    最后还是在https://stackoverflow.com中找到答案。原来每个maven项目,都会继承maven的super pom。于是修改settings.xml覆盖顶级配置即可。

    1. 先看一下目前配置的repositories,执行

      mvn dependency:list-repositories  #如果是在STS中执行,去掉前面的mvn
      

      输出

       [INFO]      id: codehaus.org
                       url: http://snapshots.repository.codehaus.org
                layout: default
           snapshots: [enabled => true, update => daily]
            releases: [enabled => false, update => daily]
      
       [INFO]    id: sonatype-nexus-snapshots
                   url: https://oss.sonatype.org/content/repositories/snapshots
               layout: default
       snapshots: [enabled => true, update => daily]
           releases: [enabled => false, update => daily]
      
      [INFO]      id: apache.snapshots
                       url: https://repository.apache.org/snapshots
                   layout: default
           snapshots: [enabled => true, update => daily]
               releases: [enabled => false, update => daily]
      

      博客园中的markdown还是不太好用,这里的格式化支持不太好

    2. 修改settings.xml,添加如下的配置

        <repository>
           <id>codehaus.org</id>
           <url>http://snapshots.repository.codehaus.org</url>
           <snapshots>
               <enabled>false</enabled>
           </snapshots>
       </repository>
       <repository>
           <id>sonatype-nexus-snapshots</id>
           <url>https://oss.sonatype.org/content/repositories/snapshots</url>
           <snapshots>
               <enabled>false</enabled>
           </snapshots>
       </repository>
       <repository>
           <id>apache.snapshots</id>
           <url>https://repository.apache.org/snapshots</url>
           <snapshots>
               <enabled>false</enabled>
           </snapshots>
       </repository>
      

      当然,这里也可以修改其它的配置,比如更新策略

    修改之后,再次clean install,就不必痛苦等待远程下载了。

  • 相关阅读:
    (9)在结果中筛选
    (8)为列表结果分页
    (7)为结果排序
    (6)找回忘记的密码
    (3)验证用户的输入
    (5)发送欢迎邮件
    (4)实现多语言
    (2)通过脚手架自动生成controller和view ----代码先行/数据库先行
    (1)用密码保护限制对view的访问
    (转)scanf()总结
  • 原文地址:https://www.cnblogs.com/linjisong/p/9284316.html
Copyright © 2020-2023  润新知