背景介绍:不同于Eclipse,Android Studio是采用Gradle来构建项目的。Gradle是一个非常先进的项目构建工具,它使用一种基于Groovy的领域特定语言(DSL)来声明项目设置,摒弃了传统基于XML(如Ant和Maven)的各种繁琐配置。
相信刚开始接触AS的同学也会分不清这两个build.gradle是干吗用的,又有什么区别?现在我就来图文并茂的分析一下这个build.gradle。
由上图我们可以看到我们的项目中有两个build.gradle文件,上面的那个在app目录下,下面那个在最外层的目录下。
1.最外层的build.gradle
两处的repositories(资料库)的闭包中都声明了jcenter()这行配置,那么这个jcenter其实就是一个代码托管仓库,很多Android开源项目都会选择将代码托管到jcenter上,声明了这行配置之后,我们就可以在项目中轻松引用任何jcenter上的开源项目了。
接下来dependencies闭包中使用classpath声明了一个Gradle插件。Gradle插件不是专门为构建Android项目而开发的,Java,C++等很多项目都可以使用Gradle来构建。一次如果我们想使用它来构建Android项目则需要声明com.android.tools.build:gradle:2.3.1这个插件。其中2.3.1是插件的版本号。
最下面的task clean{}在运行gradle clean时,执行此处定义的task,该任务继承自Delete,删除根目录中的build目录;相当于执行Delete.delete(rootProject.buildDir);gradle使用Groovy语言,调用method时可以不用加()。
这样我们就将最外层目录下的build.gradle文件分析完了,通常情况下我们并不需要修改这个文件中的内容,除非想要添加一些全局的项目构建配置。