gradle相關配置內容解析

gradlejava

項目的構建工具,基於groovy語言。主要用於管理依賴包。android

as中通常將gradle下載在C:\Documents and Settings<用戶名>.gradle\wrapper\dists 目錄/gradle-x.xx-all android-studio

 

關於build.gradleapp

下面就以個人開源項目 9GAG 來詳細講解下和Gradle相關的知識, 和Gradle相關的幾個文件通常有以下幾個maven

大致有三種(請先了解module和project的區別):工具

1. 9GAG/app/build.gradlegradle

2. 9GAG/extras/ShimmerAndroid/build.gradleui

每個Module都須要有一個gradle配置文件,語法都是同樣,惟一不一樣的是開頭聲明的是 apply plugin: ‘com.android.library’spa

3. 這個文件是整個項目的gradle基礎配置文件插件

 

build.gradle內容詳解

(1)9GAG/app/build.gradle

// 聲明是Android程序
apply plugin: 'com.android.application'

android {
    // 編譯SDK的版本
    compileSdkVersion 21
    // build tools的版本,須要本地有該版本,手動更改爲你本地已有的版本或者打開 SDK Manager 去下載對應版本均可以。
    buildToolsVersion "21.1.1"

    defaultConfig {
        // 應用的包名
        applicationId "me.storm.ninegag"
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 1
        versionName "1.0.0"
    }

    // java版本
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
    
    buildTypes {
        debug {
            // debug模式
        }
        
        release {
            // 是否進行混淆
            minifyEnabled false
            // 混淆文件的位置
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
    
    // 移除lint檢查的error
    lintOptions {
      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')
}

(2)9GAG/extras/ShimmerAndroid/build.gradle

每個Module都須要有一個gradle配置文件,語法都是同樣,惟一不一樣的是開頭聲明的是 apply plugin: ‘com.android.library’

 

其餘gradle相關文件內容解析

(1) 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

(2)9GAG/build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()   聲明倉庫的源,這裏指明的是jcenter(), 以前版本則是mavenCentral(), jcenter但是一個新的中央遠程倉庫,兼容maven中心倉庫。
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.0'   聲明瞭gradle插件的版本,和gradle版本有關。
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

(3)9GAG/settings.gradle

include ':app', ':extras:ShimmerAndroid'

文件中的 app, extras:ShimmerAndroid 都是module,若是還有其餘module都須要按照如上格式加進去。

 

 

參考

http://stormzhang.com/devtools/2014/12/18/android-studio-tutorial4/

相關文章
相關標籤/搜索