当前位置: 首页 > 知识库问答 >
问题:

强制Gradle使用HTTP而不是HTTPS

佘修为
2023-03-14

我正在尝试构建react原生android应用程序,作为一种依赖,我看到我有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

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

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

systemProp.http.proxyHost= myHost
systemProp.http.proxyPort= myPort
systemProp.http.proxyUser= myUser
systemProp.http.proxyPassword= myPassword

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

共有3个答案

许明朗
2023-03-14

试试这个

>

  • 运行像freegate这样的代理

    cmd类型中的根路径项目

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

    文件-

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

  • 雍飞雨
    2023-03-14

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

    越俊驰
    2023-03-14

    我有同样的问题,并修复了它。

    gradle被迫通过https代理从jcenter获取依赖项。

    如果你加上

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

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

    您的项目build。渐变应如下所示:

    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" }
        }
    }
    

     类似资料:
    • 我的eclipse安装始终使用https协议下载存储库结构。问题是我的合作代理不允许我在这个url上使用https。如何强制m2e使用http? 我尝试了m2e的不同外部maven安装,但没有成功。只有在使用CLI中的外部maven(使用http)时,它才起作用。

    • 我使用的是spring-boot:1.3.3、spring-hateoas:0.19.0和spring-data-rest-core:2.4.4。 这是Spring-Hateoas提供的内容的例子。过了一段时间,我将我的应用程序切换到SSL。

    • Spring Boot 1.4.2参考声明: Springhttp。转换器。首选json映射器=jackson#用于HTTP消息转换的首选json映射器。设置为“gson”以强制使用gson 我们做到了。 我们为首选json映射器设置了gson 但杰克逊还是被利用了。 最后,在排除了Maven中所有向Jackson指出的可传递依赖项之后,我们设法强制Spring Boot使用Gson。 现在的问题

    • 我正在尝试部署一个Docker容器,它公开了一个简单的Docker服务器,它是Google容器引擎(库伯内特斯)中httpbin.org服务的克隆。 这是我正在使用的服务定义: 入口定义为: 在服务/入口仪表板中,我可以看到两个IP,一个直接绑定到服务(临时),另一个静态IP绑定到入口。直接在80号端口给他们两个打电话很有魅力。 完成后,我为静态IP创建了一个A记录,并确保GKE仪表板中的负载平衡

    • 当我设置json accept header时,得到的是json。我需要强制我的授权服务器始终发送JSON。还没找到任何解决办法。谢了。