zoukankan      html  css  js  c++  java
  • maven常见问题处理(3-3)Gradle编译时下载依赖失败解决方法

    Gradle编译时在本地仓库中如果没有发现依赖,就会从远程仓库中下载,

    默认的远程仓库为 mavenCentral(),即 http://repo1.maven.org/maven2/往往访问速度特别慢,经常会下载超时或者需要很长时间导致Build失败,

    因此,可以用如下的国内仓库代替:

    • 阿里的仓库地址:http://maven.aliyun.com/nexus/content/groups/public/
    • OSChina的仓库地址:http://maven.oschina.net/content/groups/public/

    阿里云的速度比较快,更稳定一些。

    一、如果使用gradle,修改gradle配置

    1、修改单独项目

    修改 build.gradle文件,修改repositories配置

    由:

    repositories {
    mavenCentral()
    }

    改为:

    repositories {
    maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
    }
    或:

    repositories {
    maven{ url 'http://maven.oschina.net/content/groups/public/'}
    }

    这样就可以从国内的镜像中下载依赖,速度能提高不少!!!

    注意:

    build.gradle文件里有两处repositories,都需要改掉

    2、修改所有项目

    如果想一次更改所有的仓库地址,可以在USER_HOME/.gradle/(如C:Usershellowood.gradle)文件夹下添加init.gradle文件来配置

    init.gradle
    allprojects{
    repositories {
    def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'
    all { ArtifactRepository repo ->
    if(repo instanceof MavenArtifactRepository){
    def url = repo.url.toString()
    if (url.startsWith('https://repo1.maven.org/maven2') || url.startsWith('https://jcenter.bintray.com/')) {
    remove repo
    }
    }
    }
    maven {
    url REPOSITORY_URL
    }
    }
    }

    这样就可以在项目编译的时候从阿里的仓库中下载依赖了
    init.build脚本可以参考https://docs.gradle.org/current/userguide/init_scripts.html

    二、如果使用maven,修改maven配置 

    阿里云搭建了一个国内镜像 http://maven.aliyun.com/,速度很快,在Maven的settings.xml配置, 只需在mirrors节点里面加上一个mirror子节点,

    内容如下:

    <mirror>
        <!--This sends everything else to /public -->
        <id>nexus-aliyun</id>
        <mirrorOf>*</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
    </mirror>

    修改完毕之后,就可以体验下飞快的感觉了,如果进度条还是很慢,尝试重启下 IDE 。

  • 相关阅读:
    mysql max_allowed_packet过小导致的prepare失败
    linux tcp/ip编程和windows tcp/ip编程差别以及windows socket编程详解
    mysql metadata lock锁
    velocity merge作为工具类从web上下文和jar加载模板的两种常见情形
    mysql 5.7.15发布
    mysql 5.6.33发布
    2016年09月编程语言排行榜
    postgresql 9.6 rc1发布
    www.97top10.com--做最好的技术交流网站
    nginx/ajax跨子域请求的两种现代方法以及403解决
  • 原文地址:https://www.cnblogs.com/lexiaofei/p/6979887.html
Copyright © 2011-2022 走看看