zoukankan      html  css  js  c++  java
  • 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')
    }
  • 相关阅读:
    0593. Valid Square (M)
    0832. Flipping an Image (E)
    1026. Maximum Difference Between Node and Ancestor (M)
    0563. Binary Tree Tilt (E)
    0445. Add Two Numbers II (M)
    1283. Find the Smallest Divisor Given a Threshold (M)
    C Primer Plus note9
    C Primer Plus note8
    C Primer Plus note7
    C Primer Plus note6
  • 原文地址:https://www.cnblogs.com/suiyilaile/p/5302395.html
Copyright © 2011-2022 走看看