Gradle 详解

Gradle简单来说,就是工程的管理,帮我们做了依赖,打包,部署,发布等工作。就像一个管家管理我们的项目,我们只用关心写代码就可以了。

1 gradle-wraaper.properties

主工程的gradle-wraaper.properties文件 ,用于配置Gradle版本

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip

其中distributionUrl就是下载Gradle的路径,下载完成后存放路径:

导入项目时,注意本地常用的gradle和新项目的gradle是否一致。如果不一致,会去重新下载gradle文件,并重新构建,时间可长可短。

可把本地gradle-wraaper.properties文件替换至新项目,用本地常用gradle构建新项目,省去下载不同版本gradle。

2 主工程build.gradle(Project)

buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
}
}

buildscript声明的是gradle脚本自身需要使用的资源。

repositories仓库,jcenter()、maven()和google()就是托管第三方插件的平台

dependencies配置的是gradle需要的插件版本

这一次彻底弄明白Gradle相关配置:https://mp.weixin.qq.com/s/1UHcYOudViMhpUYeREZzGA

一 . Gradle基础:https://segmentfault.com/a/1190000002439306

module下的gradle文件:

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

android {
    // 编译SDK的版本
    compileSdkVersion 21
    // build tools的版本
    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 {
        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')
}

 

posted @ 2016-03-21 16:11  随易来了  阅读(370)  评论(0编辑  收藏  举报