如何避免gradle插件下载:Gradle、Android Plugin、Build Tools

问题描述

日常编译新项目时,类我型的萌新或是无Android经验的同事多次会遇到:

本地开发环境已经搭建好,项目拉下来就是运行不了,自动拉闸,大写懵逼! 还会很无辜地来一句"我啥也没动"。

比如如下的错误(感谢汪哥赞助此图):

剧情经过

(对剧情不感兴趣的可直接跳至小结)

/app目录下build.gradle文件的buildTool版本改为的"buildToolsVersion "25.0.0",然后点击各种“确认”或sync Now就欧力gay了?抱歉,汪哥用的是VSCode

So, 手动修改,手动编译,进入/Android目录执行gradlew.bat,windows命令行窗口至此目录(可直接在文件资源管理器的地址栏输入:cmd),运行: gradlew clean进行清理。清理意外中断,哦?提示Plugin is too old,插件版本太低。嗯,走,去改改项目根目录下的build.gradle,修改Plugin:

classpath 'com.android.tools.build:gradle:2.2.3'
复制代码

为什么要选2.2.3? 经查,汪哥没有开VPN。不过好在设置了代理,项目根目录下gradle.properties,咦!

systemProp.http.proxyHost=registry.npm.taobao.org
systemProp.http.proxyPort=80
复制代码

不过为了不必要的等待,可以去看看汪哥的C盘,说不定有资源找到:C:\Users\{用户名}\.gradle\wrapper\dists,看到:

哟~哟~~,再去查查 Gradle、Android Plugin、Build Tools的版本匹配关系,要不还是通俗一点解释一下?

  • Gradle Version
  • gradlew-wapper.properties文件里的distributionUrl所指向的版本。
  • 这里还有distributionBase=GRADLE_USER_HOMEdistributionPath=wrapper/dists,配置distributionUrlgradle会去本地的distributionBase下的distributionBase(一般就是C:\Users\{用户名}\.gradle\wrapper\dists)找目标版本对应的文件,如果有就直接加载使用,没有就去distributionUrl下载,没有VPN的同学建议设置一下代理,如何设置上面已有提及。
  • Android Plugin

项目根目录下的build.gradle的com.android.tools.build:

classpath 'com.android.tools.build:gradle:2.2.3'
复制代码
  • Build Tools

/app目录下build.gradle文件的buildToolsVersion

不好,这里又好像要科学上网才能进。好吧,只能使用某度搜索了,找到这篇博客

小结

在Android的开发过程中,gradle工具能帮我们高效开发,但是gradle插件的工具包的下载时常回造成长时间的等待,所以需要充分利用本地资源避免gradle工具包的下载。
复制代码
    1. 查看本地C:\Users\{用户名}\.gradle\wrapper\dists,了解本地的gradle工具哪些可用。
    1. 参照此表,调整Plugin versionGradle version。(其中Plugin version在项目所对应的"bulid.gradle"文件的 classpath,Gradle version在"gradle-wrapper.properties"文件的distributionUrl

    1. 当本地无合适的gradle版本工具时,有VPN的直接下载,没有的直接设置代理,或者都可以直接去网路上download。

转载于:https://juejin.im/post/5abdf4956fb9a028b4112c44

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值