在本系列的最终一篇里,我们将介绍Gradle包装器,以及如何在你的应用程序里嵌入Gradle。
包装器的出现是基于这样的需求,即让没有装Gradle的机器上也能正常的构建你的项目。它非常象Groovy里的Grape:如果目标机器上没有Gradle,包装器将先下载安装合适版本的Gradle,然后再运行相应的任务。这真是太方便了,而更让人欣喜的是创建包装器一点也不难,利用Gradle的wrapper任务就行了。
创建包装器的步骤如下:
- 修改你的build.gradle,在里面加入:
- 运行"gradle wrapper",这时Gradle将会创建包装器。它主要完成了这么几件工作:首先,项目的根目录下会出现两个文件,gradlew和gradlew.bat。它们的作用完全一样,只不过是针对不同的操作系统而已。其次,会创建一个wrapper目录,这个目录是你在wrapper任务里定义个jarPath的值。最后,Gradle会往这个目录下复制两个文件:gradle-wrapper.jar和gradle-wrapper.properties。
- 把这些文件全都提交到版本库里随项目一起发布出去。
task wrapper(type:Wrapper){
gradleVersion= '0.8'
jarPath= 'wrapper'
}
包装器创建完毕之后,在目标机器上只要把原来的“gradle 任务”换成“gradlew 任务”即可。
至于在应用中嵌入Gradle就更简单了,使用org.gradle.BootstrapMain.main
System.setProperty("gradle.home", "Gradle的Home目录");
org.gradle.BootstrapMain.main(["-b", "build.gradle的路径", "任务名"] as String[])
只需两句话!这里需要注意的是,在应用里嵌入Gradle之后,Gradle将以当面应用的路径作为主路径,即build.gradle里的路径都是以此为基础的。在这里还有一个更加详细的例子,有兴趣的请访问。
自此,所有Gradle的系列便结束了。还是那句话,本系列只能算是参考手册的速览,要想深入,还得勤查参考手册和API。
本系列的其它部分:

最新评论
9 周 6 小时之前
9 周 1 天之前
11 周 5 天之前
11 周 5 天之前
17 周 2 天之前
17 周 4 天之前
19 周 3 天之前
20 周 1 天之前
20 周 2 天之前
20 周 5 天之前