IntelliJ IDEA配置科学上网代理

为IDEA配置 HTTP Proxy

在用idea编译一些开源项目的时候,我们经常会遇到拉取不到依赖包的情况。由于墙太高了,我在编译某个项目的时候也遇到了这种情况: 一直卡在这里,我们发现是jetbrains.com连不上,为了解决这个问题,我们需要对idea配置一下科学上网,我们打开idea的settings界面,找到Http Proxy配置,如下图: 在这里选择Manual proxy configuration,填写代理的IP和端口即可,最后一个输入框记得填写无需代理的域名,方便墙内的网站可以快速访问。 这里我是使用了lantern的代理,可以在蓝灯的设置界面中找到代理的IP和端口号:

为Gradle设置国内镜像仓库

在项目的build.gradle文件中添加仓库地址配置:

buildscript {
    repositories {
        maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

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

如果要全局剩下,则需要到用户目录下的 .gradle 目录下面创建一个 init.gradle 文件,内容如下:

allprojects{
    repositories {
        def ALIYUN_REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public'
        def ALIYUN_JCENTER_URL = 'http://maven.aliyun.com/nexus/content/repositories/jcenter'
        all { ArtifactRepository repo ->
            if(repo instanceof MavenArtifactRepository){
                def url = repo.url.toString()
                if (url.startsWith('https://repo1.maven.org/maven2')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."
                    remove repo
                }
                if (url.startsWith('https://jcenter.bintray.com/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."
                    remove repo
                }
            }
        }
        maven {
                url ALIYUN_REPOSITORY_URL
            url ALIYUN_JCENTER_URL
        }
    }
}

如果Idea开启了HTTP Proxy,可以在No proxy for规则里面添加阿里云域名,让阿里云域名的请求直接走墙内网络即可:

192.168., 172.22., *.aliyun.com

References

gradle配置国内镜像

arthinking wechat
欢迎关注itzhai公众号,欢迎关注itzhai公众号,获取更多最新的文章