这是截至目前在使用Gradle的过程中遇到的最大的坑。目前gradle的Android插件官方提供了两个版本:标准版本和实验性版本。而实验性版本对于Gradle的版本和NDK的版本都有特别说明,另外实验性版本中对于一些参数的定义和声明的方式与标准版并不一致。
对于gradle的两个版本的配置之间的区别,个人专门写了开源项目来介绍,详情可以查看:https://github.com/bihe0832/Android-gradle-jni-so
下面是标准版本的官方用户使用指南:
下面是实验性版本的官方用户使用指南:
Experimental Plugin User Guide:http://tools.android.com/tech-docs/new-build-system/gradle-experimental
为了防止有些被墙的人看不到,添加一篇个人博客对于官方文档的引用地址:https://blog.bihe0832.com/Experimental_Plugin_User_Guide.html
其实对于编译中的大部分问题,以及上面说的参数定义的问题官方文档都已经有具体说明,可以参照文档来修改对应的gradle脚本。
使用Gradle的时候,当切换了配置的时候(例如修改了gradle版本、增加了新的依赖库)后再次编译的时候就需要重新去下载资源,然而由于墙的原因,这个过程会相当慢,反而会大大的影响开发的效率。因此推荐将一些常用的资源预下载到本地。
下载好Gradle的版本文件,建议下载gradle-2.5-all和最新的gradle的压缩包。一般这两个就可以满足需要。
下载地址:https://services.gradle.org/distributions/ - 将下载好的zip文件,根据自己计算机的配置,放置到对应的文件夹,例如本地都是放在
/Users/zixie/lib/gradle/distribution/
修改对应项目根目录gradle下gradle-wrapper.properties中对于gradle版本的说明,改为使用本地文件,例如:
#Wed Apr 10 15:27:10 PDT 2013
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=file\:/Users/zixie/lib/gradle/distribution/gradle-2.5-all.zip
由于墙的原因,很多资源更新很慢,正好nexus也推荐搭建私库,因此最好的办法就是自己搭建一套私服。自己也是在自己的Mac机器上部署一套私有仓库代理,即用于自己的开发,也可以提供给团队或者自己其余的机器使用。
具体部署的方法可以查看:Mac搭建私有maven仓库,提供Nexus Responsitory镜像