問題描述:
第一次使用AndroidStudio打開已經存在的AndroidStudio項目,卡在Gradle:Resolvedependencies':app_debugCompile'步驟,即使進入了AndroidStudio界面也無法正常下載Gradle依賴,無法編譯運行。
1.首先確認gradle依賴都聲明在app下的build.gradle中,而不是在全局項目下的build.gradle文件中,這是使用gradle管理AndroidStudio項目的常識。
2.確認AndroidStudio的Http Proxy已經正常設置。我使用的是ShadowSocksX代理,在Http Proxy中設置127.0.0.1 端口1080,Connect Test中測試google.com和Android.com都可以正常連接。
如果你沒有做到以上兩個要求的話,請先做到看看結果如何,然后再往下看。
解決過程:
1.首先看當前AndroidStudio自帶的gradle版本,我的是2.4,然后去下載gradle-2.4-all.zip,解壓得到gradle-2.4-all 文件夾。將gradle-2.4-all 文件夾拷貝到默認的gradle路徑下的wrapper/dists路徑下。mac下是/Users/NameOfuser/.gradle/wrapper/dists
經過這個操作可以在AndroidStudio的窗口中選擇項目進入項目界面了。沒有卡在Gradle:Resolvedependencies':app_debugCompile'步驟這個步驟。我認為是AndroidStudio是檢測到本地的gradle文件然后選擇了離線模式啟動項目。
但是這時候編譯項目報錯,gradle依賴無法下載,提示你關閉offline模式。這時候才發現第一個步驟只是在每次啟動和編譯時不用去在線檢查gradle,而是直接用離線的版本。然而第一次運行的話,gradle依賴本地是沒有的。
2.首先切換到線上模式,即在Gradle設置中選擇Use default gradle wrapper(recommended),然后修改全局項目下的build.gradle文件中修改
allprojects{
repositories{
jcenter()
}
}
中jcenter()為mavenCental(),使用maven下載依賴。設置完后rebuild,下載依賴成功。
添加國內的源 開源中國 Maven 庫
buildscript { repositories { maven { url 'http://maven.oschina.net/content/groups/public/' } jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { maven { url 'http://maven.oschina.net/content/groups/public/' } jcenter() } }