gradlew和gradle的区别

1. Android Studio打包和直接用gradlew脚本打包用的脚本不同,Android Studio打包用的是本地gradle,在android studio安装目录,而Gradlew是包装器,自动下载包装里定义好的gradle 版本,保证编译环境统一,下载的Gradle发行版被存放在目录$USER_HOME/.gradle/wrapper/dists中,

所以有时修改gradle时需要将两个地方都修改才能保证Android Studio打包和直接用gradlew脚本打包结果相同

2、避免每次工程都下载gradle可以使用gradle命令打包而不是gradlew

方法:配置gradle到环境变量;工程中使用自己配置变量的gradle即可。

先找到gralde的根目录,在系统变量里添加两个环境变量:

变量名为:GRADLE_HOME,变量值就为gradle的根目录;

比如变量值为:

D:androidandroid-studio\studiogradlegradle-2.10

还有一个在系统变量里PATH里面添加gradle的bin目录

比如:

D:androidandroid-studio\studiogradlegradle-2.10\bin

这样就配置完了,执行以下这个命令:gradle assembleRelease,看看是不是可以了。

3.关于每次gradlew都去下载gradle问题

如果不更改项目里gradle/wrapper/gradle-wrapper.propertis文件,执行./gradlew 命令后发现显示:

Downloading https://services.gradle.org/distributions/gradle-2.14.1-all.zip

说明就开始联网开始下载gradle了,但是无网络的情况下或者在内网情况下根本无法下载,这个时候怎么办?

接下来就是解决这个问题:

如果之前下载过gradle,那么,

对于linux,会在:/home/root/.gradle/wrapper/dists/gradle-2.14.1-all目录下看到很多杂乱的字符串命名的文件夹,打开文件夹就可以找到gradle-2.14.1-all.zip压缩包。

对于windows,会在:C:\Users\Adminstrator\.gradle\wrapper\dists\gradle-2.14.1-all目录下看到很多杂乱的字符串命名的文件夹,打开文件夹就可以找到gradle-2.14.1-all.zip压缩包。

也可以在android-studio文件夹下找到gradle文件夹里面的gradle-2.14.1这个文件夹,压缩后也可以使用。

当然也可以外网下下载好gradle-2.14.1-all.zip后放入内网电脑。

不管用上面哪一种方法,把上面得到的gradle-2.14.1.zip压缩包拷贝到项目的gradle/wrapper目录下,然后把项目里gradle/wrapper/gradle-wrapper.propertis文件的distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip改为distributionUrl=gradle-2.14.1-all.zip

做完上面的步骤,然后在项目目录下执行./gradlew等一系列命令就不会去联网下载gradle了

参考:https://www.zybuluo.com/xtccc/note/275168

https://www.zhihu.com/question/45403949

    原文作者:PengboGai
    原文地址: https://www.jianshu.com/p/b9165a9243bc
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞