【问题标题】:Can't build Android App with Gradle无法使用 Gradle 构建 Android 应用程序
【发布时间】:2015-06-17 02:00:50
【问题描述】:

我正在尝试使用 Gradle 命令行界面构建我的 Android 应用程序。我还将 GRADLE_HOME/bin 添加到环境中。首先,我使用 gradle init 在我的项目文件夹中生成包装器 gradlew。现在,当我使用这个包装器来构建我的应用程序(./gradlew build)或使用它的任何功能时,它会尝试下载一个 gradle-2.3.zip 文件并失败(下面的错误消息)。我不明白的是为什么 gradle 尝试再次下载 gradle。另外,当我在浏览器中打开下载网址时,它说该页面不安全,这可能是导致错误的原因。我究竟做错了什么?有解决方法吗?我已经设法使用我的浏览器下载了 zip 文件,但我不知道如何处理它。这是我得到的例外。

正在下载https://services.gradle.org/distributions/gradle-2.3-bin.zip

线程“主”javax.net.ssl.SSLHandshakeException 中的异常:

java.security.cert.CertificateException:没有主题替代 DNS 找到名称匹配 services.gradle.org。在 sun.security.ssl.Alerts.getSSLException(Alerts.java:192) 在 sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1884) 在 sun.security.ssl.Handshaker.fatalSE(Handshaker.java:276) 在 sun.security.ssl.Handshaker.fatalSE(Handshaker.java:270) 在 sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1439) 在 sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:209) 在 sun.security.ssl.Handshaker.processLoop(Handshaker.java:878) 在 sun.security.ssl.Handshaker.process_record(Handshaker.java:814) 在 sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1016) 在 sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1312) 在 sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1339) 在 sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1323) 在 sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:563) 在 sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)

【问题讨论】:

标签: java android gradle


【解决方案1】:

只需更新 gradle/wrapper/gradle-wrapper.properties

更新:

-来自:

distributionUrl=https\://services.gradle.org/distributions/gradle-2.3-all.zip

-to:

distributionUrl=http://services.gradle.org/distributions/gradle-2.3-all.zip

【讨论】:

  • 这个问题是由于 SSL 证书错误引起的,这工作得很好。谢谢
  • 在构建的时候会自动变成https!怎么办?
  • 我认为是时候将 gradle 更新到最新版本了。
【解决方案2】:

services.gradle.org 上的 SSL 证书配置目前存在问题

http://discuss.gradle.org/t/urgent-ssl-apache-configuration-for-services-gradle-org-is-bad/8808

开发人员已经意识到并正在努力解决问题。

这个对同一问题的回答提供了一个可能合适的解决方法:

https://stackoverflow.com/a/29576568/4776802

【讨论】:

    猜你喜欢
    • 2014-01-29
    • 1970-01-01
    • 2015-11-12
    • 1970-01-01
    • 1970-01-01
    • 2023-01-30
    • 2017-07-18
    • 2015-10-02
    • 1970-01-01
    相关资源
    最近更新 更多