【问题标题】:Gradle Sync Failed in android SDKandroid SDK 中的 Gradle 同步失败
【发布时间】:2016-02-13 07:18:07
【问题描述】:

在 Android SDK 中 Gradle 同步失败:未知主机“location.app.services.gradle.org”。您可能需要调整 Gradle 中的代理设置。请参阅 IDE 日志了解更多详情

android {
    compileSdkVersion 23
    buildToolsVersion '23.0.1'
    dexOptions {
        incremental true
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_6
        targetCompatibility JavaVersion.VERSION_1_6
    }
    aaptOptions {}
}

dependencies {}

repositories {
    maven { url 'services.gradle.org/distributions/gradle-2.1-all.zip'; }
}

【问题讨论】:

  • 请用您的 Gradle 文件更新您的问题
  • buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.5.0' } } allprojects { repositories { jcenter() } } android { compileSdkVersion 23 buildToolsVersion '23.0.1' dexOptions { incremental true } compileOptions { sourceCompatibility JavaVersion.VERSION_1_6 targetCompatibility JavaVersion.VERSION_1_6 } aaptOptions { }} 依赖项 { }repositories { maven { url 'services.gradle.org/distributions/gradle-2.1-all.zip' } }
  • 您是否尝试过从头开始创建一个新项目并查看是否可行,然后根据需要复制/更改该项目?

标签: android android-gradle-plugin


【解决方案1】:

我认为如果你将更新后的工具解压到你的 currendt sdk 文件夹中,问题可能会解决。

下载链接:http://dl.google.com/android/android-sdk_r24.4.1-windows.zip

更新

如果还是有问题,说明sdk设置没有问题,主机相关的问题可能是代理设置的结果。

请导航至文件 -> 设置并在搜索栏中输入“HTTP 代理”。 您能否确保选择了“自动检测”选项?如果不是,请尝试使用该选项AND,请在选择 Auto-detect 选项后,在最底部有 Connection Test 按钮,输入 google.com 并查看结果是否为 Success。

更新2

您可以尝试定位自己的本地 gradle 发行版。 下载最新副本: https://services.gradle.org/distributions/gradle-2.11-all.zip

解压到一个文件夹中,在File--> Settings中,这次搜索Gradle,在'project-level settings'下你可以设置gradle到你自己的位置。 然后

【讨论】:

  • 亲爱的,未解决。错误是“未知主机-'location.app.services.gradle.org'”
  • Javin,我更新了答案,请检查一下。其次,你的gradle文件不是正常格式,意思是compileSDK和显式java版本……和你目前遇到的问题没有关系,但是我建议你使用最新的java,以便使用proguard的最新功能。跨度>
  • 输入 google.com 后,“连接成功”- 但问题没有解决
  • 使用 uncuhed gradle 发行版可能会解决您的问题,如果这也不起作用,恐怕您可能想从 stratch 设置您的工作环境。
【解决方案2】:

通过代理时,我发现除了为 Android Studio 设置代理设置之外,我还必须手动指定 Gradle 的代理设置才能同步。

来自 Gradle 上的文档:

配置 HTTP 代理(例如用于下载依赖项) 是通过标准 JVM 系统属性完成的。这些属性可以 直接在构建脚本中设置;例如设置代理主机 将使用 System.setProperty('http.proxyHost', 'www.somehost.org')。或者,可以在中指定属性 gradle.properties 文件,位于构建的根目录或 Gradle 主目录。

示例 11.2。配置 HTTP 代理

gradle.properties

systemProp.http.proxyHost=www.somehost.org
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=userid
systemProp.http.proxyPassword=password
systemProp.http.nonProxyHosts=*.nonproxyrepos.com|localhost

所以将这些添加到gradle.properties,然后保存并重新同步 Gradle。如果您使用的是 HTTPS,请将 http 更改为 https。如果您同时使用 HTTP 和 HTTPS,请确保您都已指定。

这些步骤在 Gradle 2.11 文档第 11 章中很容易找到。构建环境(您在错误日志“Learn about configuring HTTP proxies in Gradle"”中看到的链接)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-18
    • 2016-02-05
    • 2023-04-09
    • 1970-01-01
    • 2017-11-07
    • 2019-06-07
    • 1970-01-01
    • 2019-01-18
    相关资源
    最近更新 更多