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