转载请注明出处:http://blog.csdn.net/u013005791/article/details/60143750

这个问题遇到过很多次,网上也有很多解决办法,但是好像都没有发现refreshing gradle project在做什么。

可以再试试

./gradlew --info
  • 1

看看详细信息。

一般refreshing gradle project出现在打开一个新工程或者升级Android Studio之后,为什么需要refreshing呢?问题就出在gradle-wrapper.properties这个文件上,这个文件指明了本工程需要用的gradle版本。

如图所示。

最后一行表示当前工程gradle的版本,如果Android Studio发现gradle的缓存目录里没有这个版本,这个时候就会触发refreshing gradle project,而一个gradle包的大小一般在70M以上,开了VPN需要半个小时以上才能缓存下来,不开的话基本会卡死在那里,下载不了。知道问题就好解决了,首先打开你的gradle缓存目录(如果你没修改过的话目录就在下面的路径).

windows: C:\Users\用户名\.gradle\wrapper\dists
OSX: /Users/用户名/.gradle/wrapper/dists
  • 1
  • 2

首先我们先去gradle仓库手动下载好一个版本(可以是工程需要的版本,你也修改gradle-wrapper.properties中的版本号为gradle缓存目录已有的版本,这样就不用下载了),最好用迅雷下载更快。 
假设我们需要gradle-3.4-all。 
查看dists目录,发现Android Studio已经生成了这个目录。

后面这串字符很重要,是refreshing gradle project时自动生成的目录,我们下载好的gradle文件也要放在这个目录。

如图所示,把zip包(可能需要改名)和解压后的目录放在上面这串字符串的目录中。强制关闭Android Studio,重启后就不会停留在refreshing gradle project了。

有时候会卡在compile/debugCompile也是因为这个原因,也可能是因为根目录下的build.gradle文件的问题,如图所示:

图中的classpath表示的gradle工具版本在本地没有的话也会下载,导致卡住。 
这个编译工具的在osx系统中的路径为/Users/jady/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle,windows中找对应的用户目录,如图所示:

AndroidStudio自带有一个,要看自带是哪个版本,Windows可以新建一个工程看这个文件,osx可以在/Applications/Android Studio.app/Contents/gradle/m2repository/com/ 
android/tools/build/gradle
里面看。 
可以在jceter仓库手动下载。 
所以打开一个项目之前一定要看下build.gradle文件和gradle-wrapper.properties文件,修改成已有的或自带的。

[转载]Android Studio卡在refreshing gradle project的原因和快速解决办法的更多相关文章

  1. Android Studio卡在refreshing gradle project的原因和快速解决办法

    Android Studio更新后一直Refreshing的解决办法! 这个问题遇到过很多次,网上也有很多解决办法,但是好像都没有发现refreshing gradle project在做什么. 一般 ...

  2. 错误异常 (1)Android Studio错误提示:Gradle project sync failed. Basic functionality (eg. editing, debugging) will not work properly

    [已解决]Android Studio错误提示:Gradle project sync failed. Basic functionality (eg. editing, debugging) wil ...

  3. android studio更新后,构建gradle卡在Refreshing Gradle Project 解决办法

    Android Studio每次更新版本都会更新Gradle这个插件,但由于墙的问题,导致更新很慢或者最后更新失败,又是停止在Refreshing Gradle Project ,有时新建项目的时候报 ...

  4. 【问题】AndroidStudio导入项目一直卡在Building gradle project infod的最快速解决方案

    原因 AndroidStudio导入项目一直卡在Building gradle project info的原因, 是因为导入的这个项目使用的gradle版本与本地已经拥有的gradle版本不一致,导致 ...

  5. Android studio启动后卡在refreshing gradle project(包解决)

    这个问题几乎每个刚使用Android studio的同学都会碰到过,网上有各式各样的方法,有的说使用本地gradle,我试过多次,每次启动android studio时还是会检查更新,所以根本上解决的 ...

  6. Android studio启动后卡在refreshing gradle project

    这个问题几乎每个刚使用Android studio的同学都会碰到过,网上有各式各样的方法,有的说使用本地gradle,我试过多次,每次启动Android studio时还是会检查更新,所以根本上解决的 ...

  7. 更新后android studio 2.0 构建gradle卡在Refreshing Gradle Project 解决办法

    首先打开android studio项目 找到项目目录gradle\wrapper\gradle-wrapper.properties这个文件 你会看到 #Wed Apr 10 15:27:10 PD ...

  8. Android Studio错误提示:Gradle project sync failed. Basic functionality (eg. editing, debugging) will not work properly

    Android Studio中出现提示: Gradle project sync failed. Basic functionality (eg. editing, debugging) will n ...

  9. Android Studio: Failed to sync Gradle project 'xxx' Error:Unable to start the daemon process: could not reserve enough space for object heap.

    创建项目的时候报错: Failed to sync Gradle project 'xxx' Error:Unable to start the daemon process: could not r ...

随机推荐

  1. Java Web学习总结(8)——使用Cookie进行会话管理

    一.会话的概念 会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. 有状态会话:一个同学来过教室,下次再来教室,我们会知道这个同学曾 ...

  2. [React] Create component variations in React with styled-components and "extend"

    In this lesson, we extend the styles of a base button component to create multiple variations of but ...

  3. C#调用天气预报网络服务

    本程序通过调用网络上公开的天气预报网络服务来显示某个地区三天的天气,使用到的网络服务地址:http://www.webxml.com.cn/WebServices/WeatherWebService. ...

  4. 【Codeforces Round #443 (Div. 2) A】Borya's Diagnosis

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 模拟 [代码] #include <bits/stdc++.h> using namespace std; const ...

  5. HDU2438 Turn the corner【三分法】【数学几何】

    Turn the corner Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  6. js进阶 12-6 监听鼠标滚动事件和窗口改变事件怎么写

    js进阶 12-6 监听鼠标滚动事件和窗口改变事件怎么写 一.总结 一句话总结:滚动事件scroll(),浏览器窗口调整监听resize(),思考好监听对象. 1.滚动事件scroll()的监听对象是 ...

  7. Emacs常用快捷键

    基本命令 C-x C-f 打开/新建文件 C-x C-s 保存当前缓冲区 C-x C-w 当前缓冲区另存为 C-x C-v 关闭当前Buffer并打开新文件 C-x i 光标处插入文件 C-x b 切 ...

  8. 判断客户端是iPad、安卓还是ios

    武穆逸仙 有人心疼时,眼泪才是眼泪,否则只是带着咸味的液体:被人呵护着,撒娇才是撒娇,要不然就是作死. 努力做一个可爱的人,不埋怨谁,不嘲笑谁,也不羡慕谁,阳光下灿烂,风雨中奔跑,做自己的梦,走自己的 ...

  9. 【42.86%】【Codeforces Round #380D】Sea Battle

    time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...

  10. 从Set里面取出有序的记录

    Set里面的记录是无序的.假设想使用Set,然后又想里面的记录是有序的,就能够使用TreeSet.而不是HashSet.在使用TreeSet的时候,里面的元素必须是实现了Comparable接口的,T ...