Android Studio卡在gradle解析依赖上。

41

我是Android Studio的新手,在创建新项目时出现了一个依赖解决错误::app:_debugCompile

我等了一段时间,甚至尝试创建一个新项目,但都没有成功。这是窗口的截图:

build.gradle文件的内容如下:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.0'

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

allprojects {
    repositories {
        jcenter()
    }
}

4
不是重复的。 完全不同的问题。 - SBerg413
我曾经遇到过这个问题。只需查看此页面。解决方案在这里 - Mehdi Jahed Manesh
https://dev59.com/6GAg5IYBdhLWcg3wOoxQ#37378848 - Omid Raha
15个回答

16

你可能无法连接互联网下载Gradle,可以设置HTTP代理。

文件(File)-> 设置(Settings)-> HTTP代理(Http Proxy)-> 手动配置代理(Manual proxy configuration)-> HTTP

主机名(Host name): 172.16.26.2(这是我的) 端口号(Port number): 8080

当然,你需要更改主机名和使用的代理。


5
网络连接可能是问题所在。我也遇到过这种情况,特别是当你在中国时。 - Chris.Zou
设置HTTP代理有所帮助。谢谢! - Dinesh
1
文件 -> 设置 -> 外观和行为 -> 系统设置 -> HTTP代理 -> 嘟嘟声 - Milad Faridnia
我在寻找代理页面时遇到了困难。搜索帮了个大忙。 - Harshit Choudhary

13

Android爱好者的100%修复方法

你可以为每个新项目修复它,也可以为你打开的每个新项目修复它。我将解释两种方法:

** 对于每个项目单独修复:

当你创建一个新项目并卡在这里时: Gradle: 解析依赖关系“:app:_debugCompile” 只需点击取消按钮 之后进程可能会继续进行,你可能会看到在Android Studio底部卡在同一点上 现在你可以点击进度条旁边的红色取消按钮

所以在这一点上,你的新项目应该打开但会有一些错误,例如: 错误:无法使用gradle运行构建操作.......

现在打开Android studio窗口左侧的项目选项卡(它有Android studio的绿色图标) 现在进入以下路径: Gradle Scripts> build.gradle(project:your project name)

双击它后,你将在右侧的编辑器中看到它的内容

只需查找以下行:

allprojects {
    repositories {
        jcenter()    }
}

只需选择 jcenter(),不需要做其他更改,并将其替换为以下行:

maven { url 'http://repo1.maven.org/maven2' }

之后只需在编辑器顶部点击“重试”按钮即可。

就是这样,现在你的项目将在很短的时间内重新构建,没有任何问题(不要忘记连接到互联网)。这种方法仅适用于此项目,如果您打开另一个新项目,您必须执行同样的操作才能使其正常工作。

现在针对每个新项目的修复:

首先以管理员身份打开记事本(右键单击它,然后单击“以管理员身份运行”)。

使用记事本转到Android Studio安装路径下面的以下路径(当您以管理员身份打开记事本时,可以将文件拖放到其中,因此在记事本中打开以下路径):默认路径为:

C:\ Program Files \ Android \ Android Studio \ plugins \ android \ lib \ templates \ gradle-projects \ NewAndroidProject \ root

您在该路径中看不到任何内容,您必须将文件类型选择器设置为文件打开器窗口右下方的所有文件

现在打开build.gradle.ftl

按Ctrl + F键并搜索:

allprojects

在您搜索的上述字词的前面,您可以看到以下行:

{       repositories {         jcenter()<#if mavenUrl != "mavenCentral">

你所需做的就是仅选择 jcenter() ,并将其替换为以下行:

maven { url 'http://repo1.maven.org/maven2' }

保存文件并关闭记事本。

就这样,现在您的新项目构建时间少于30秒,具体取决于系统硬件。

如果此解决方案解决了您的问题,请点赞。

问候


1
你真的太棒了!!我已经为这个问题苦恼了两天了。。 - Yugandhar Pathi
1
非常感谢!你救了我的一天 :) - Huy

13
Killing the process或重启系统对我有帮助,现在它可以完美地工作了...
P.S:一句来自情景喜剧《网络狂人》的引语:
Did you try turning it off and on again?

2
在卸载、删除用户/youAsUser/..下的所有Android Studio和Gradle文件夹并重新安装Android Studio后,重启系统对我也起了作用。 - smoothumut
7
重启无效... :( 我仍然卡在Gradle解析依赖项上。 - Swapnil Kale

5

在我的情况下,我导入了由他人创建的项目。对我而言,问题出在该项目的 gradle.properties 文件中设置的代理。我将以下行在 gradle.properties 中注释掉,然后问题得到解决。

#systemProp.https.proxyPort=8080
#systemProp.http.proxyHost=10.10.11.12
#systemProp.https.proxyHost=10.10.11.12
#systemProp.http.proxyPort=8080

2
对��来说,我需要添加这两行https。谢谢! - poshaughnessy

3

网络问题。在我重启Android Studio并使用代理后,一切都正常了。在Gradle构建期间,Android Studio需要从互联网下载一些文件。确保您的网络连接良好。


我在使用gradle standalone时遇到了同样的问题,设置代理对我有用。只需在gradle.properties中设置systemProp.https.proxyHostsystemProp.https.proxyPort变量即可。 - Andrea

3
尝试查看Gradle调试输出。(我猜测IDE无法访问jcenter存储库)。 以下是您可以尝试的内容:
  1. 进入“设置”>“编译器”(基于Gradle的Android项目)
  2. 在命令行选项中添加“--stacktrace --debug”
  3. 构建您的项目
  4. 单击并查看右下角的Gradle控制台。您应该能够看到gradle出了哪些问题。
您的模块“build.gradle”长什么样子?您可能需要在repositories块下添加“mavenCentral()”。(假设您有在那里找到的依赖项)

1
这个没成功,Gradle控制台上没有堆栈跟踪出现。 - smoothumut

2

我曾经遇到过同样的问题,后来我让它自己运行了30分钟。之后它就开始正常工作了。

"_debugCompile" 后面也会处理其他内容。


1
检查您的 gradle.properties 文件,它可能开启了一些系统属性。删除它们,您可能不需要它们。
-systemProp.http.proxyPassword=password
-systemProp.http.proxyHost=172.18.**.**
-systemProp.http.proxyUser=user.name
-systemProp.http.proxyPort=80

清除缓存并重启Android Studio。

更多信息,请检查您的全局gradle.properties文件是否也具有这些属性,请参见https://dev59.com/oW025IYBdhLWcg3wc1xM#50350959。 - EpicPandaForce

1
我通过前往 AppName\app -> 打开 build.gradle 并将依赖项部分替换为以下内容解决了这个问题:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:25.1.0'
compile 'com.android.support:design:25.1.0'
compile 'com.android.support:multidex:1.0.0'
}

你需要为每个应用程序执行此操作,但之后它们将正常加载。
我是这样做的:
1.创建新项目
2.等待它卡住
3.退出Android Studio
4.进行上述修改
5.打开项目

0
  1. 当Gradle构建时间过长时,取消构建。

  2. 检查文件->设置->外观和行为->系统设置->HTTP代理中的HTTP代理设置。使用“检查连接”进行验证。

  3. 如果一切正常,请从app/build.gradle文件中删除android测试编译和/或单元测试构建,例如删除以下行:

    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' })


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接