一、你不想看到的 Gradle Build Running

话说在天朝当程序员也是很不容易的,不管是查阅资料还是下载东西,很多时候你会发现自己上网姿势不对,当然对大多数程序员来说,这都不是事儿。这次重新安装了最新版的AndrodiStudio,按照国际惯例,第一次启动当然是按默认程序走一波 Hello World。可是,很有可能,你会看到你不想看到的如下界面:

原因估计大家应该都知道,是你项目对应版本的 gradle 下载不下来造成的。在不改变上网环境的情况下,解决办法就是下载 gradle 到本地,然后做相应配置。下面主要说说怎么配置。

二、亲测可行的解决方案

2.1解决问题

打开项目中的 gradle-wrapper.properties 文件,如下:

意思就是在 GRADLE_USER_HOME/wrapper/dists/下面去找对应的 gradle 文件,没有的话,就去
到最后一行
distributionUrl=https\://services.gradle.org/distributions/gradle-3.4.1-all.zip
中的地址下载,其中 gradle-3.4.1-all.zip 这个说明你当前工程配置的 gradle 的版本为 3.4.1。所以需要下载该版本的gradle,
你可以到这里下载:
http://services.gradle.org/distributions/
网上有热心人士的共享:
gradle-x.x-all.zip各个版本的离线包集合
接下来打开 AndroidStudio 中 gradle 的设置界面,如下:

可以看到,默认的 gradle 的目录是C:/Users/SharpCJ/.gradle,进入该目录
C:\Users\SharpCJ\.gradle\wrapper\dists\gradle-x.x-all\,可以看到有一串看起来像乱码字符的文件夹,进入,删掉里面的 gradle-x.x-all.zip.lck 和 gradle-x.x-all.zip.part 文件,然后把前面下载下来的对应的 gradle-x.x-all.zip 文件放进去,不用解压,然后 Ctrl+F9,重新编译工程,则会自动解压。OK,问题解决了。

2.2 更改 gradle 版本

假设现在要自己改变 gradle 版本,同样的道理,改 gradle-wrapper.properties 文件中最后一行版本号,然后编译则会生成对应的乱码字符的文件夹,然后按上面的操作进行,注意不能手动新建文件夹。
但是有时候,你会发现,编译的时候仍然会报错,这时候,很有可能是你选择的 gradle 版本太低了。gradle的版本还需要和 gradle 插件的版本对应,提高 gradle 版本即可。

三、gradle 和 gradle 插件的区别

我们知道,AndroidStudio 是基于 gradle 构建项目的,安装 gradle插件 才能使系统能支持运行 gradle。安装 AndroidStudio 后就已经帮我安装了 gradle插件.但 gradle插件是独立于Android Studio运行的,所以它的更新也是与 AndroidStudio 分开的。
打开工程的 build.gradle 文件,能看到如下界面:

这个就是 gradle插件的版本号。下图展示了 gradle插件 和 gradle 之间的对应关系:

因为 gradle 在不断更新,自然 gradle插件也需要不断更新版本才能提供对新版本gradle的支持,所以最好让你的Gradle和Gradle插件都更新到最新。
更新 gradle 插件的方法:
通过选择 File > Project Structure > Project 来指定Gradle版本,然后点击 Tools > Android > Sync Project with Gradle Files 去下载。

gradle配置的更多相关文章

  1. eclipse下gradle配置

    eclipse下gradle配置 这可真麻烦啊,一个项目把java的东西学习完了!这不,刚弄完maven又来了个gradle. http://gradle.org/gradle-download 1. ...

  2. Android studio gradle配置

    什么是Gradle? Gradle是一种依赖管理工具,基于Groovy语言,面向Java应用为主,它抛弃了基于XML的各种繁琐配置,取而代之的是一种基于Groovy的内部领域特定(DSL)语言. gr ...

  3. Android Studio Gradle配置工具开发

    by 蔡建良 2019-3-9 QQ: 304125648 Android Studio导入项目经常出现卡死的情况.针对Gradle更新配置的问题,网上已经有详细的方法,但也很烦索,步骤也很多. 因此 ...

  4. Android Studio gradle配置详解

    android gradle配置详解 AppExtension类及其属性 可能大部分人看到AppExtension类会感觉到非常的陌生,其实我们在app中的build.gradle中填写配置信息的时候 ...

  5. Android开发之深入理解Android Studio构建文件build.gradle配置

    摘要: 每周一次,深入学习Android教程,TeachCourse今天带来的一篇关于Android Studio构建文件build.gradle的相关配置,重点学习几个方面的内容:1.applica ...

  6. Android studio gradle配置完整版(转)

    Android studio gradle配置完整版https://my.oschina.net/u/1471093/blog/539075 Android studio 自定义打包apk名 - pe ...

  7. Android Studio 使用笔记:在图形界面使用 Gradle 配置项目所需jar包

    在 Android Studio 中使用第三方 jar 包,可以直接下载后添加到项目中,也可以使用 Gradle 配置进行管理.图形界面下十分简单. 点击下图中间的图标,或者选中 Model ,按F4 ...

  8. Android Studio 使用笔记:记录使用Gradle配置AndroidAnnotations

    系统:Mac Yosemit 10.10 JDK:1.6+ Android Studio:1.2 原来看到有人用AndroidAnnotations,十分羡慕.但是Gradle并不熟悉,现找到了正确的 ...

  9. JFinal学习 & Gradle配置续 & Tomcat配置

    接上一篇对Gradle的学习,再用JFinal项目再建一个. 参考了这篇文章:https://my.oschina.net/u/1010578/blog/390094 但是其中没有代码,所以看了这篇  ...

  10. 关于Gradle配置的小结

    前言 使用 Android Studio 来开发 Android 工程的过程中,接触 Gradle 是不可避免的,比如配置签名.引入依赖等.那么 Gradle 到底是什么东西呢? Gradle 是一个 ...

随机推荐

  1. 雅礼培训 Problem B 【图论 + 贪心】

    题意 A和B在树上轮流选点,记A的联通块个数为\(x\),B的联通块个数为\(y\) A使\(x - y\)最大,B使\(x - y\) 二人采取最优策略,求\(x-y\) 题解 树联通块个数 = 点 ...

  2. 算法复习——拓展欧几里得(poj1061)

    题目: Description 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很 ...

  3. spring之Autowire

    当使用spring为一个对象的属性注入时,通常使用xml文件的property元素和ref属性,但是我们也可以使用spring中的autowire进行注入 使用方法如下 <bean id=&qu ...

  4. P1140 相似基因 (动态规划)

    题目背景 大家都知道,基因可以看作一个碱基对序列.它包含了4种核苷酸,简记作A,C,G,T.生物学家正致力于寻找人类基因的功能,以利用于诊断疾病和发明药物. 在一个人类基因工作组的任务中,生物学家研究 ...

  5. Python脚本实现单据体背景色及字段前景色设置

    #PythonEntitySetColor clr.AddReference('Kingdee.BOS.Core') from Kingdee.BOS.Core.DynamicForm.PlugIn. ...

  6. 了解Chrome扩展程序开发--摘抄

    了解Chrome扩展程序开发 2018-01-11 边城到此莫若 鸡蛋君说前端 首先,我尝试来用简单几句话描述一下Chrome扩展程序: Chrome扩展主要用于对浏览器功能的增强,它强调与浏览器相结 ...

  7. ZOJ 3811 / 2014 牡丹江赛区网络赛 C. Untrusted Patrol bfs/dfs/并查集

    Untrusted Patrol Time Limit: 3 Seconds                                     Memory Limit: 65536 KB    ...

  8. JS实现限行

    一.JS代码实现 1. 机动车辆限行如下图所示: 具体详情请访问:http://www.bjjtgl.gov.cn/zhuanti/10weihao/index.html 2.JS代码实现 <! ...

  9. IronPython 与C#交互

    http://www.cnblogs.com/nuaalfm/archive/2010/02/11/1667448.html 一.介绍 Python是一种面向对象.直译式计算机程序设计语言,也是一种功 ...

  10. hdu2204Eddy&#39;s爱好

    大概题意是要你输出1到n中,可以表示成a^b的数,a,b都是大于0的整数的个数, 当中b大于1. 由于1到n中.可以全然开平方的个数就是(n^0.5)的整数部分. 以此类推能够得到,全然开立方.全然开 ...