1、Gradle简介
Gradle是一种依赖管理工具,基于Groovy语言,面向Java应用为主,它抛弃了基于XML的各种繁琐配置,
取而代之的是一种基于Groovy的内部领域特定(DSL)语言。
2、默认会下载在
<用户名>.gradle\wrapper
3、Module的gradle配置文件
主要是:app/build.gradle
apply plugin: 'com.android.application' // 声明是Android程序
android {
compileSdkVersion 21 // 编译SDK的版本
buildToolsVersion "21.1.1"// build tools的版本
defaultConfig {
// 应用的包名
applicationId "me.storm.ninegag"
minSdkVersion 14
targetSdkVersion 21
versionCode 1
versionName "1.0.0"
}
compileOptions { // java版本
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
buildTypes {
debug {
// debug模式
}
release {
// 是否进行混淆
minifyEnabled false
// 混淆文件的位置
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
lintOptions { // 移除lint检查的error
abortOnError false
}
}
dependencies {
// 编译libs目录下的所有jar包
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:21.0.2'
compile 'com.etsy.android.grid:library:1.0.5'
compile 'com.alexvasilkov:foldable-layout:1.0.1'
// 编译extras目录下的ShimmerAndroid模块
compile project(':extras:ShimmerAndroid')
}
3、library Moudle gradle配置文件
每一个Module都需要有一个gradle配置文件,语法都是一样,唯一不同的是开头声明的是 apply plugin: ‘com.android.library’
4、project下的 【/gradle包】
这个目录下有个 wrapper 文件夹,里面可以看到有两个文件,一个是jar,一个是properties,我们主要看下 gradle-wrapper.properties 这个文件的内容:
#Thu Dec 18 16:02:24 CST 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https://services.gradle.org/distributions/gradle-2.2.1-all.zip
可以看到里面声明了gradle的目录与下载路径以及当前项目使用的gradle版本,这些默认的路径我们一般不会更改的,
这个文件里指明的gradle版本不对也是很多导包不成功的原因之一。
主要是:配置下载路径,和存储路径
5、project下的 【builde.gradle文件】
apply from:"config.gradle"//表示所有的Module都可以从config.gradle中读取数据
buildscript {
//仓库源
repositories {
jcenter()
}
dependencies { //gradle版本
classpath 'com.android.tools.build:gradle:2.2.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
6、project下【settings.gradle】
这个文件是全局的项目配置文件,里面主要声明一些需要加入gradle的module,我们来看看该文件的内容:
include ':app', ':extras:ShimmerAndroid'
网友评论