Win平臺會默認下載到 C:\Documents and Settings\<用戶名>.gradle\wrapper\dists 目錄php
//聲明是Android 程序 apply plugin: 'com.android.application' //配置了用於 android 構建的全部參數。這是Android DSL的入口。 //默認狀況下,只須要配置編譯目標,以及build-tools的版本。 //它經過compileSdkVersion和buildtoolsVersion屬性來完成。 //提示:你應該只配置使用這個android插件。若是同時配置使用了java插件也會致使構建錯誤。 android { //編譯SDK的版本 compileSdkVersion 19 //build tools 的版本 // 構建工具的版本,其中包括了打包工具aapt、dx等等。 // 這個工具的目錄位於..sdk_path/build-tools/XX.XX.XX buildToolsVersion "19.1.0" //在android元素的內部的defaultConfig元素是定義全部這些配置的地方。 defaultConfig { // 應用的包名 applicationId "com.example.lidecheng.myapplication" minSdkVersion 14 targetSdkVersion 19 versionCode 1 versionName "1.0" } // java版本 compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 } buildTypes { release { // 是否進行混淆 minifyEnabled false // 混淆文件的位置 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } // 移除lint檢查的error lintOptions { abortOnError false } } dependencies { //編譯libs目錄下的全部jar包 compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:19.+' } // 這個文件是app文件夾下這個Module的gradle配置文件,也能夠算是整個項目最主要的gradle配置文件
// Top-level build file where you can add configuration options common to all sub-projects/modules. //整個項目的gradle基礎配置文件 //buildscript { ... }配置了驅動構建的代碼。 // 聲明瞭使用jcenter 中央庫,而且對一個Maven 文件有一個類路徑依賴。 // 這個文件是包含 Gradle Android 插件的 1.5.0版本的庫 buildscript { repositories { jcenter() } dependencies { //聲明瞭android gradle plugin的版本 classpath 'com.android.tools.build:gradle:1.5.0' // 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 } // 內容主要包含了兩個方面:一個是聲明倉庫的源,這裏能夠看到是指明的jcenter(), 以前版本則是mavenCentral(), jcenter能夠理解成是一個新的中央遠程倉庫,兼容maven中心倉庫,並且性能更優。另外一個是聲明瞭android gradle plugin的版本,android studio 1.0正式版必需要求支持gradle plugin 1.0的版本。
//全局的項目配置文件 include ':app'
#聲明瞭gradle的目錄與下載路徑以及當前項目使用的gradle版本, #這些默認的路徑咱們通常不會更改的,這個文件裏指明的gradle版本不對也是不少導包不成功的緣由之一。 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip
## This file is automatically generated by Android Studio. # Do not modify this file -- YOUR CHANGES WILL BE ERASED! //經過sdk.dir屬性來設置 SDK 的位置,而且所設置的這個SDK要求存在。 //或者,您也能夠設置一個ANDROID_HOME環境變量。這兩種方法之間沒什麼差異 ndk.dir=/Users/lidecheng/Documents/android/android-sdk-macosx-2/ndk-bundle sdk.dir=/Users/lidecheng/Documents/android/android-sdk-macosx-2
–領域特定語言(domain-specific languages,簡稱DSL)
http://google.github.io/android-gradle-dsl/current/index.htmlhtml
defaultConfig{} 默認配置,是ProductFlavor類型。它共享給其餘ProductFlavor使用java
sourceSets{ } 源文件目錄設置,是AndroidSourceSet類型。android
buildTypes{ } BuildType類型git
signingConfigs{ } 簽名配置,SigningConfig類型github
productFlavors{ } 產品風格配置,ProductFlavor類型macos
testOptions{ } 測試配置,TestOptions類型app
aaptOptions{ } aapt配置,AaptOptions類型dom
lintOptions{ } lint配置,LintOptions類型maven
dexOptions{ } dex配置,DexOptions類型
compileOptions{ } 編譯配置,CompileOptions類型
packagingOptions{ } PackagingOptions類型
jacoco{ } JacocoExtension類型。 用於設定 jacoco版本
splits{ } Splits類型。
android { … }配置了用於 android 構建的全部參數。這是Android DSL的入口。
默認狀況下,只須要配置編譯目標,以及build-tools的版本。它經過compileSdkVersion和buildtoolsVersion屬性來完成。
重要提示:你應該只配置使用這個android插件。若是同時配置使用了java插件也會致使構建錯誤。