强制Gradle使用HTTP而不是HTTPS

时间:2016-03-16 07:57:16

标签: android http gradle proxy react-native

我正在尝试构建react-native android app,作为一个依赖我看到我有gradle,但它无法加载构建。 错误讯息:

cin

问题很明显,我坐在公司代理的后面,阻止任何像这样的HTTPS连接出错。 所以我的问题是:如何强制gradle使用HTTP加载这些文件?应该放置这些属性(gradle文件中的哪个,即gradle.properties)?

P.S。我已经在gradle属性文件中设置了这些:

* What went wrong:
A problem occurred configuring root project 'MobileApp'.
> Could not resolve all dependencies for configuration ':classpath'.
   > Could not resolve com.android.tools.build:gradle:1.3.1.
     Required by:
         :MobileApp:unspecified
      > Could not resolve com.android.tools.build:gradle:1.3.1.
         > Could not get resource 'https://jcenter.bintray.com/com/android/tools/build/gradle/1.3.1/gradle-1.3.1.pom'.
            > Could not GET 'https://jcenter.bintray.com/com/android/tools/build/gradle/1.3.1/gradle-1.3.1.pom'.
               > Connection to https://jcenter.bintray.com refused

任何链接,建议等都会有很大帮助。

4 个答案:

答案 0 :(得分:24)

我有同样的问题并修好了。

gradle强制通过https代理从jcenter获取依赖关系。

如果你添加

maven { url "http://jcenter.bintray.com" }

在您的存储库而不是jcenter()中,gradle将此存储库视为具有http代理的简单maven存储库。

您的项目build.gradle应如下所示:

buildscript {
    repositories {
        maven { url "http://jcenter.bintray.com" }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.1'
    }
}

allprojects {
    repositories {
        maven { url "http://jcenter.bintray.com" }
    }
}

答案 1 :(得分:8)

在build.gradle中用jcenter {url" http://jcenter.bintray.com/"}替换jcenter()

答案 2 :(得分:0)

试试这个

  • 运行像freegate这样的代理

  • cmd类型的根路径项目

    gradlew -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=8580

档案 - >设置 - >项目设置 - > Gradle - >全局Gradle设置 - > Gradle VM Options

-Dhttp.proxyHost=myProxyAddr
-Dhttp.proxyPort=myProxyPort
-Dhttp.proxyUser=myUsername
-Dhttp.proxyPassword=myPasswd 
-Dhttp.auth.ntlm.domain=myDomainName

答案 3 :(得分:0)

进入附近的gradle/wrapper文件夹并编辑gradle-wrapper.properties

然后在分发网址中添加https,它应该可以正常工作。

distributionUrl=https\://services.gradle.org/distributions/gradle-1.10-bin.zip
                    ^

验证您要抓取的文件实际上在存储库中

https://services.gradle.org/distributions/

重新运行命令以获取gradle包装器版本。

gradle wrapper
gradlew.bat wrapper -gradle-version="1.10"

希望有帮助。