Gradle 是什么?
2013 年,Google 发布了全新的 Android 开发 IDE————Android Studio。然而, Android Studio 基于 IDEA,不管怎么说,这都是一个高逼格的 IDE。但核心应该是 Google 新推出的 Gradle 编译环境。
Gradle 用于替换 Eclipse 所使用的 ant 作为默认的 Android 编译系统,相对于 ant 编译工具,Gradle 吸纳了 ant 灵活的脚本特性、Maven 丰富的依赖管理策略和强大的插件式环境。
正是由于 Gradle 的强大,导致上手难度比 ant 大,这也是许多从 Eclipse 环境切换到 Android Studio 环境的开发者觉得有困难的原因。然而 Gradle 的强大在于让 Android 开发的依赖管理、库管理、渠道管理等都变得更加方便;
Gradle 学习方式以及资料
首先,Gradle 本身是基于 Groovy 脚本语言进行构建的,并通过 Domain Specific Language(DSL 语言)进行描述和控制构建逻辑。但是作为开发者,大可不必去深究 Groovy 脚本语言,只要能看懂,懂配置使用就好了。
这里推荐几个比较官方的介绍文档:
医生书中推荐的那个链接失效了,网上找到了这个,应该算不错的。
- Gradle 用户指南中文翻译
在文末也附上几个超链接,有兴趣可以去戳戳。
一个 Android 项目中的文件结构(AS 而非 Eclipse)
再安利一个表格:
目录文件 | 定义 |
---|---|
.gradle | gradle项目产生文件(自动编译工具产生的文件) |
.idea | IDEA项目文件(开发工具产生的文件) |
app | 其中一个 module,复用父项目的设置,可与父项目拥有相同的配置文件 |
build | 自动构建时生成文件的地方 |
gradle | 自动完成 gradle 环境支持文件夹 |
.gitignore | git源码管理文件 |
build.gradle | gradle 项目自动编译的配置文件 |
gradle.properties | gradle 运行环境配置文件 |
gradlew | 自动完成 gradle 环境的 linux mac 脚本,配合 gradle 文件夹使用 |
gradlew.bat | 自动完成 gradle 环境的 windows 脚本,配合 gradle 文件夹使用 |
local.properties | Android SDK NDK 环境路径配置 |
*.iml | IDEA 项目文件 |
setting.gradle | gradle 项目的子项目包含文件 |
常用的 gradle 文件介绍
表格看起来很清晰,重点看加粗的几个目录文件,下面再简要说说常用的 gradle 的文件:
module app 里面的 build.gradle
Android Studio 自动创建的 module 默认生成的 build.gradle 文件,这个文件是开发中打交道最多的一个文件。
如下:
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.veyron.www.money"
minSdkVersion 15
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])