方法1:
网上很多解决卡在building gradle project info的文章,都说的是替换未下载完成的gradle文件.
我当然同意,但是这样要反复弄强杀几次gradle,太麻烦了.
不能直接创建本地gradle wrapper的路径的原因是,gradle在下载的时候给zip压缩包创建了一个间层,看起来像是md5.
今天看了源码,在gradle-wrapper.jar里面有下载和计算方式,现在贴出来.
public class Main {
public static void main(String[] args) {
String hash = getHash("https://services.gradle.org/distributions/gradle-2.14.1-all.zip");
System.out.println(hash);
}
private static String getHash(String string) {
try {
MessageDigest e = MessageDigest.getInstance("MD5");
byte[] bytes = string.getBytes();
e.update(bytes);
return (new BigInteger(1, e.digest())).toString(36);
} catch (Exception var4) {
throw new RuntimeException("Could not hash input string.", var4);
}
}}
这样,就拿到间层的命名了.看到想编译项目的gradle wrapper文件,你就可以用迅雷下载好,放到指定位置,省去巨量时间.
方法2:
这个方法更省时间,下载到要编译的项目后,删除里面的gradle和.gradle文件夹.
打开后提示无法找到gradle.
对话框有ok 和cancel两个选项.
点击cancel是让你选择本地的gradle路径(推荐)
点 cancel,点cancel,点cancel.重要的事情说三遍.
gradle路径在as安装目录下
例如 /Applications/Android Studio.app/Contents/gradle/gradle-2.14.1
方法3 修改gradle wrapper的下载地址为淘宝镜像
gradle-wrapper.properties
中修改
distributionUrl=http://mirrors.taobao.net/mirror/gradle/gradle-2.14.1-bin.zip
也可以修改jcenter的地址为国内镜像加速
阿里云
allprojects {
repositories {
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public'}
}
}
OSCHINA
allprojects {
repositories {
maven{ url 'http://maven.oschina.net/content/groups/public/'}
}
}