问题:

你需要更新应用的Gradle版本。

解决方案:

生成一个新的wrapper,或者直接修改属性文件(.properties)。

讨论:

Android Studio包含了一个Gradle的分发。当你创建一个新的android应用的时候,IDE自动为Unix和windows生成gradlew和gradlew.bat脚本。这些“wrapper”脚本允许你再没有安装gradle之前使用它。替代的,wrapper脚本自动下载并安装指定版本的gradle。

软件工程持续了很长时间,gradle定期发布新版本。你也许会想要更新到新的版本,因为有更好的性能,或者因为一些新的特性。为了实现这些,你有两个选项:

1、在build.gradle文件中增加一个wrapper任务,并且生成新的wrapper脚本

2、直接编辑gradle-wrapper.properties文件中distributionUrl的值

如果你的项目已经加载了新版本的gradle,第一种方法是最好的选项。默认的gradle 配置已经包含了一个叫wrapper的任务(可以使用tasks指令查看,'./gradlew tasks')。

gradle wrapper命令行提供了一个 --gradle-version的参数。可以通过这种方式指定一个版本来重新生成wrapper。如:

另一种选择是明确的在顶级的build文件中增加wrapper任务,并且指定gradleVersion值,如下:

在这些变更之后,运行./gradlew任务将会生成一个新的wrapper文件。

偶尔存在的wrapper实在太老了,以至于android studio拒绝同步已有的build文件,使得无法运行任何任务。在这种情况下,你可以直接找到控制wrapper的文件。

除了gradlew和gradlew.bat脚本外,wrapper还依赖于gradle/wrapper文件夹下的两个文件,gradle-wrapper.jar和gradle-wrapper.properties,如下图:

gradle-wrapper.properties文件包含了distributionUrl属性,用来标示从哪里下载需要的版本的gradle,如下:

#Fri Feb 03 14:50:11 CST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.14-bin.zip

可以直接编辑文件,改变为想要的版本号。这可以运行你执行已有的wrapper脚本。

你可以通过命令行标志,或者使用wrapper脚本增加二进制分发(注意url结尾的bin)的方式更新gradle。Android Studio会有一个下载完整的包含源码的分发的提示,如下:

当你点击链接的时候,gradle-wrapper.properties文件中的distributionUrl值就会变成"all"版本。

如果你没有及时点击更新按钮,你也可以直接修改文件,将URL中的bin替换成all。

转载于:https://www.cnblogs.com/tootwo2/p/6368829.html

Android开发:《Gradle Recipes for Android》阅读笔记(翻译)2.4——更新新版本的Gradle...相关推荐

  1. Android 开发之多种方案PDF阅读

    Android 开发之多种方案PDF阅读 最近开发中涉及到阅读港股公告,但是HK股票的公告都是坑,居然是pdf的,所以没办法,就要研究安卓pdf阅读,期间踩了点坑-- 安卓的webview与ios 的 ...

  2. Android开发介绍(基于Android Studio软件)

    Android开发介绍(基于Android Studio软件) 关于Android开发,笔者走过一些弯路,因此今天总计了有关Android开发的一些内容和心得,希望对大家有所帮助.首先来一张安卓开发者 ...

  3. android studio开发工具介绍,Android应用开发之Android开发工具介绍、Android Studio配置...

    本文将带你了解Android应用开发之Android开发工具介绍.Android Studio配置,希望本文对大家学Android有所帮助. 2.1   Android Studio配置 2.1.1 ...

  4. 基于神经网络的知识图谱问答方法 阅读笔记+翻译

    2019-arXiv-Introduction to Neural Network based Approaches for Question Answering over Knowledge Gra ...

  5. Android开发:《Gradle Recipes for Android》阅读笔记1.3

    想命令行执行gradle的构建,可以通过提供的gradle wrapper或者安装gradle. 构建android项目不需要安装gradle,因为android studio已经包含gradle.& ...

  6. Android开发:《Gradle Recipes for Android》阅读笔记(翻译)5.2——使用Android Testing Support Library进行测试...

    问题: 你想要测试app的Android组件. 解决方案: 使用新的测试类实现JUnit风格的测试. 讨论: 测试像activities,services等的Android组件,需要将app部署到连接 ...

  7. Android开发:《Gradle Recipes for Android》阅读笔记(翻译)3.3——整合resource文件

    问题: 想要在product的flavor里面改变图片,文字或者其它资源. 解决方案: 在flavor里面增加合适的资源目录,并且改变他们包含的值. 讨论: 考虑下3.2章的"hello w ...

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

    通过这篇文章的学习,你会对build.gradle文件有一个全新的认识,可以将TeachCourse文章提到的相关说明作为文档参考,方便在另一个module中引入,代码如下: apply plugin ...

  9. 2022最新Android开发全套学习资料(知识笔记+技能图谱)3-5年开发者进阶提升

    前言 本人2013年由 java 转到 Android 开发,十年间,我从小厂打杂到进入到核心团队,再跳槽到大厂,在华为呆过一段时间,18年四月份进了阿里一直到现在.这期间,我见证过很多人的成败起落, ...

  10. android开发面试准备!Android黑科技保活实现原理揭秘,内容太过真实

    开头 年前面试了一些公司,目前已经拿到了阿里跟头条的 offer.去年我也出去找工作了,面试五家拿到了四家公司的 offer.所以在面试方面我应该可以提供一些愚见吧.本篇会讲解一些常见题目以及一些答题 ...

最新文章

  1. util.Date与sql.Date的相互转换以及区别
  2. lucene Hello World
  3. 基于linux的java学习,Java学习---Linux总结
  4. poj 2288(状态压缩dp + TSP问题)
  5. CVPR 2019 | 人脸照片秒变艺术肖像画:清华大学提出APDrawingGAN
  6. 干货分享:插画家Anmi的创作技巧与练习方法
  7. php删除菜单栏,如何删除WordPress站点健康状态面板和菜单项
  8. keytool 错误: java.io.IOException: Keystore was tampered with, or password was incorrect
  9. 1确认自己的python版本
  10. java(21) - 注解详解
  11. PAT甲级1022 map、set的使用
  12. linux替换字符串 正则,Linux 字符串操作-裁剪和正则替换
  13. Matlab 边界提取
  14. Windows Server 2019 Datacenter x64 安装 SHARP AR-2048N 打印机驱动
  15. 在word里面加水印的方法和技巧教程!
  16. Windows 2003 工作手册
  17. 六、策略模式—旅行的交通工具 #和设计模式一起旅行#
  18. 中科创达 面试题目合集(2021.8)
  19. Qt学习 第21节:窗口初始化EVENT
  20. OSChina 周二乱弹 ——宅女喵 租男友 包吃住 100一天

热门文章

  1. 权力的游戏登录显示服务器上限,权力与纷争登录不上怎么办 登录不上解决方案...
  2. d3.js中点可以用图片吗_WebGL 直线直吗?
  3. linux 主机支持远程唤醒_linux 通过wol远程开机【转】
  4. 【2018CPCP-Final G:】Pastoral Life in Stardew Valley
  5. 开始编译mysql文件_mysql编译安装(详细)(转载)
  6. VTK(一)---VTK简单示例
  7. 桌面无法显示计算机,win10 桌面计算机无法显示
  8. colspan会影响内部单元格宽度失效_冷轧轧辊失效原因分析及改进措施
  9. android程序设计背景,android – 以可编程方式设置drawable作为背景
  10. java复用的具体实现_Java应用架构读书笔记(6):实现复用