gradle配置
一、你不想看到的 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配置的更多相关文章
- eclipse下gradle配置
eclipse下gradle配置 这可真麻烦啊,一个项目把java的东西学习完了!这不,刚弄完maven又来了个gradle. http://gradle.org/gradle-download 1. ...
- Android studio gradle配置
什么是Gradle? Gradle是一种依赖管理工具,基于Groovy语言,面向Java应用为主,它抛弃了基于XML的各种繁琐配置,取而代之的是一种基于Groovy的内部领域特定(DSL)语言. gr ...
- Android Studio Gradle配置工具开发
by 蔡建良 2019-3-9 QQ: 304125648 Android Studio导入项目经常出现卡死的情况.针对Gradle更新配置的问题,网上已经有详细的方法,但也很烦索,步骤也很多. 因此 ...
- Android Studio gradle配置详解
android gradle配置详解 AppExtension类及其属性 可能大部分人看到AppExtension类会感觉到非常的陌生,其实我们在app中的build.gradle中填写配置信息的时候 ...
- Android开发之深入理解Android Studio构建文件build.gradle配置
摘要: 每周一次,深入学习Android教程,TeachCourse今天带来的一篇关于Android Studio构建文件build.gradle的相关配置,重点学习几个方面的内容:1.applica ...
- Android studio gradle配置完整版(转)
Android studio gradle配置完整版https://my.oschina.net/u/1471093/blog/539075 Android studio 自定义打包apk名 - pe ...
- Android Studio 使用笔记:在图形界面使用 Gradle 配置项目所需jar包
在 Android Studio 中使用第三方 jar 包,可以直接下载后添加到项目中,也可以使用 Gradle 配置进行管理.图形界面下十分简单. 点击下图中间的图标,或者选中 Model ,按F4 ...
- Android Studio 使用笔记:记录使用Gradle配置AndroidAnnotations
系统:Mac Yosemit 10.10 JDK:1.6+ Android Studio:1.2 原来看到有人用AndroidAnnotations,十分羡慕.但是Gradle并不熟悉,现找到了正确的 ...
- JFinal学习 & Gradle配置续 & Tomcat配置
接上一篇对Gradle的学习,再用JFinal项目再建一个. 参考了这篇文章:https://my.oschina.net/u/1010578/blog/390094 但是其中没有代码,所以看了这篇 ...
- 关于Gradle配置的小结
前言 使用 Android Studio 来开发 Android 工程的过程中,接触 Gradle 是不可避免的,比如配置签名.引入依赖等.那么 Gradle 到底是什么东西呢? Gradle 是一个 ...
随机推荐
- BZOJ 1260: [CQOI2007]涂色paint【区间DP】
Description 假设你有一条长度为5的木版,初始时没有涂过任何颜色.你希望把它的5个单位长度分别涂上红.绿.蓝.绿.红色,用一个长度为5的字符串表示这个目标:RGBGR. 每次你可以把一段连续 ...
- gevent 使用踩坑
简单介绍 gevent 基本概念: 调度器: hub 上下文切换管理: switch 主循环: loop 协程: greenlet gevent 特性: ...
- vue项目实战, webpack 配置流程记录
vue项目实战记录,地址在这 购物车单界面 npm install npm run dev 跑起来可以看到界面效果 这里简单记录一下webpack的编译流程 入口 package.json " ...
- LA 并查集路径压缩
题目大意:有n个节点,初始时每个节点的父亲节点都不存在.有两种操作 I u v:把点节点u的父亲节点设为v,距离为|u-v|除以1000的余数.输入保证执行指令前u没有父亲节点. E u:询问u到根节 ...
- ZOJ 3306 状压dp
转自:http://blog.csdn.net/a497406594/article/details/38442893 Kill the Monsters Time Limit: 7 Seconds ...
- win10+Linux18.04双系统安装
给好多可爱的妹子重装了那么多次电脑,懒得码过程,因为我一般每次都要查一查...这次来个综合版吧,超简单,无脑操作. 首先说一下我的电脑Thinkpad + 500G 硬盘 (2014年买的老电脑) 首 ...
- stm32的IIc总线--超声波测距
- 分布式架构和微服务CI/CD的范本技术解读
随笔分类 - 分布式架构--http://www.cnblogs.com/hujihon/category/858846.html (ZooKeeper.activemq.redis.kafka)的分 ...
- 存code
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> us ...
- reason: '*** setObjectForKey: object cannot be nil (key: 1)'-crash!
[self.imageDownloadsInProgress setObject:iconDownloader forKey:[NSNumber numberWithInteger:tag]]; 字典 ...