在android studio上运行项目,gradle的配置是必不可少的,但是随着项目的逐渐成长,迎面而来的就是.各种依赖包的添加,数不胜数的签名,渠道包等,整个gradle变得很乱,这样其实我们可以将gradle的部分内容分离出来放在另一个自定义gradle内. 如这时我们添加的Plugin 就只要对其赋值就可以了.

  • 步骤:

  • 在总项目根目录下创建 dependencies.gradle文件(名字可以自定义)

  • 根目录下创建的自定义内容如下:

需要注意的是在dependencies.gradle文件中向Project添加额外的Property时,我们并不能直接定义,而是应该通过ext来定义。

一般我们使用闭包的方式,代码如下:


ext {

//添加supportLibraryVersion属性

supportLibraryVersion = '23.1.1'

//添加dependenciesretrofitVersion属性

dependenciesretrofitVersion = '2.0.0-beta2'    

//添加dependencies数组

dependencies = [

    retrofit             : "com.squareup.retrofit:retrofit:$retrofitVersion",

    retrofitConverterGson: "com.squareup.retrofit:converter-gson:$retrofitVersion",

    retrofitAdapterRxJava: "com.squareup.retrofit:adapter-rxjava:$retrofitVersion",

    ]

}
  • 也可以不使用闭包的

//添加supportLibraryVersion属性

ext.supportLibraryVersion = '23.1.1'

//添加dependenciesretrofitVersion属性

ext.dependenciesretrofitVersion = '2.0.0-beta2'
  • 当然gradle其实已经提供了很多自定义的property,一些常用的有:

project:Project本身

name:Project的名

description:Project的描述

version:Project的版本号

path:Project的绝对路径

buildDir:Project构建结果存放目录

  • 在根目录的build.gragle下添加

apply from: 'dependencies.gradle'
  • 接着在知道app工程的builde.gradle下添加依赖如下:

dependencies {

    //获取 dependencies.gradle 自定义的数组

    Map<String, String> dependencies = rootProject.ext.dependencies

    compile dependencies.retrofit

    compile dependencies.retrofitConverterGson

    compile dependencies.retrofitAdapterRxJava

}
  • 当然也可以配置其他,如 defaultConfig

当前app下的defaultConfig,引用dependencies.gradle 配置的参数


defaultConfig {
   minSdkVersion rootProject.ext.androidMinSdkVersion
   targetSdkVersion rootProject.ext.androidTargetSdkVersion
}

自定义gradle的property的更多相关文章

  1. java基础---->自定义gradle的插件

    这里面简单的介绍一下gradle插件的编写. 自定义gradle插件 我们编写的gradle脚本一般是放在build.gradle文件中.所以首先创建一下build.gradle文件,下面的例子都是在 ...

  2. AS 自定义 Gradle plugin 插件 案例 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  3. Gradle的构建过程都不会?带你全面了解Android如何自定义Gradle 插件

    目前 Android 工程的默认构建工具为 Gradle,我们在构建 APK 的时候往往会执行 ./gradlew assembleDebug 这样的命令.. 那么这个命令到底代表着什么含义呢?命令的 ...

  4. 手把手带你自定义 Gradle 插件 —— Gradle 系列(2)

    请点赞加关注,你的支持对我非常重要,满足下我的虚荣心. Hi,我是小彭.本文已收录到 GitHub · Android-NoteBook 中.这里有 Android 进阶成长知识体系,有志同道合的朋友 ...

  5. AndroidTest工程的自定义gradle task

    由于需要将assets目录的资源拷贝到设备sdcard中,然而我的工程是一个android test工程,而android test工程在编译阶段,不会把assets目录的资源打包成对应apk,而为了 ...

  6. 自定义gradle plugin

    最近开始接触gradle 正好有个需求apidoc

  7. 自定义gradle插件

    重点学习https://www.jianshu.com/p/804d79415258 https://blog.csdn.net/l2show/article/details/53925543 htt ...

  8. Gradle学习系列之五——自定义Property

    在本系列的上篇文章中,我们讲到了增量式构建,在本篇文章中,我们将讲到如何自定义Project的Property. 请通过以下方式下载本系列文章的Github示例代码: git clone https: ...

  9. gradle 自定义插件 下载配置文件

    1.新建Gradle项目: 2.建立src/main/groovy目录,并添加如下代码: ConfigPlugin.groovy package com.wemall.config import or ...

随机推荐

  1. KVM 时钟分析

    1. 关于GToffset: KVM的guset时钟为gc0_COUNT 其中:mfc0 gc0_count = c0_COUNT+GToffset vcpu_run 以及 vcpu_reenter的 ...

  2. java中的final和volatile详解

    相比synchronized,final和volatile也是经常使用的关键字,下面聊一聊这两个关键字的使用和实现 1.使用 final使用: 修饰类表示该类为终态类,无法被继承 修饰方法表示该方法无 ...

  3. linux系统性能监控--CPU利用率

    在对系统的方法化分析中,首要且最基本的工具之一常常是对系统的 CPU利用率进行简单测量. Linux以及大多数基于 UNIX的操作系统都提供了一条命令来显示系统的平均负荷(loadaverage) . ...

  4. valgrind检测内存泄漏

    Valgrind 使用 用法:valgrind [options] prog-and-args [options]: 常用选项,适用于所有Valgrind工具 -tool=<name>最常 ...

  5. Android艺术开发探索第三章——View的事件体系(上)

    Android艺术开发探索第三章----View的事件体系(上) 我们继续来看这本书,因为有点长,所以又分了上下,你在本片中将学习到 View基础知识 什么是View View的位置参数 Motion ...

  6. springMVC源码分析--HandlerMapping(一)

    HandlerMapping的工作就是为每个请求找到合适的请求找到一个处理器handler,其实现机制简单来说就是维持了一个url到Controller关系的Map结构,其提供的实际功能也是根据req ...

  7. ejabberd mod_echo 解析

    ejabberd mod_echo 解析(金庆的专栏 2016.8)按开发入门的说明,mod_echo是最简单的模块之一.https://docs.ejabberd.im/developer/当然 m ...

  8. CentOS6.7 下安装JDK

    第一步:从官网上下载rpm版本的jdk文件. 第二步:安装JDK 执行命令rpm    -ivh    jdk-8u73-linux-i586.rpm 至此,JDK安装完成,我们来看下JDK的安装目录 ...

  9. [安全]Back_Track_5 vm 版安装和使用

    下载安装 下载使用国内的镜像  http://mirrors.ustc.edu.cn/kali-images/kali-1.0.9/ 我这里是vm9.0 下载之后解压,然后打开vm,然后 文件--&g ...

  10. 闪屏页面开发遇到的问题you need to use a theme.appcompat theme (or descendant)

    开始做一个新闻客户端的应用,在做到闪屏页面时之前发布应用的时候总是报错,原因是我在splash.java中把Activty写成ActionBarActivity,导包,然后就可以了.以前也遇到过这种情 ...