Android studio和maven设置proxy

2,710 阅读1分钟

设置proxy

设置代理后能提高SDK和ndk的下载速度。

mac:preferences -> Appearance & Behavior -> System Settings -> HTTP Proxy 选中 Auto-detect proxy setting,设置 mirrors.neusoft.edu.cn:80 mac参考配置

maven指向阿里云镜像

repositories

在build.gradle有三个地方可以设置repositories,分别是buildScript、全局、allProjects。 区别:

  • buildScript: 用于gradle 脚本自身的执行
  • 根级别: 为当前项目提供依赖包下载
  • allprojects: 用于多项目的提供共同的依赖包,子项目可以配置自己的repositories 加载自身需要的依赖包。

项目内替换

 repositories {
        google()
        jcenter()
    }

替换为

    repositories {
        maven{ url 'https://maven.aliyun.com/repository/google' }
        maven{ url 'https://maven.aliyun.com/repository/jcenter'}
    }

全局替换

GRADLE_HOME/.gradle/下创建目录init.d,然后新建一个init.gradle文件,具体路径为GRADLE_HOME/.gradle/init.d/init.gradle。代码如下:


allprojects {
    repositories {
        // 指向阿里云镜像
        maven{ url 'https://maven.aliyun.com/repository/jcenter'}
        maven{ url 'https://maven.aliyun.com/repository/google' }
        maven{ url 'https://maven.aliyun.com/repository/central'}
 
        all { ArtifactRepository repo ->
            if (repo instanceof MavenArtifactRepository) {
                def url = repo.url.toString()
                if (url.startsWith('https://maven.google.com')) {
                    remove repo
                }
            }
        }
    }
 
    buildscript {
        repositories {
            maven{ url 'https://maven.aliyun.com/repository/jcenter'}
            maven{ url 'https://maven.aliyun.com/repository/google' }
            maven{ url 'https://maven.aliyun.com/repository/central'}
 
            all { ArtifactRepository repo ->
                if (repo instanceof MavenArtifactRepository) {
                    def url = repo.url.toString()
                    if (url.startsWith('https://maven.google.com')) {
                        remove repo
                    }
                }
            }
        }
    }
}

参考