zoukankan      html  css  js  c++  java
  • Gradle简介

    gradle跟ant/maven一样,是一种依赖管理/自动化构建工具。但是跟ant/maven不一样,它并没有使用xml语言,而是采用了Groovy语言,这使得它更加简洁、灵活,更加强大的是,gradle完全兼容maven和ivy。

    基本配置

    build.gradle

    首先明确gradle跟maven一样,也有一个配置文件,maven里面是叫pom.xml,而在gradle中是叫build.gradle。Android Studio中的android项目通常至少包含两个build.gradle文件,一个是project范围的,另一个是module范围的,由于一个project可以有多个module,所以每个module下都会对应一个build.gradle。

     

    一些与gradle相关的文件:

    gradle.properties

    从名字上就知道它是一个配置文件,没错,这里面可以定义一些常量供build.gradle使用,比如可以配置签名相关信息如keystore位置,密码,keyalias等。

    settings.gradle

    这个文件是用来配置多模块的,比如你的项目有两个模块module-a,module-b,那么你就需要在这个文件中进行配置,格式如下。

    include ':module-a',':module-b'

    gradle文件夹:

    这里面有两个文件,gradle-wrapper.jar和gradle-wrapper.properties,它们就是gradle wrapper。gradle项目都会有,你可以通过命令gradle init来创建它们(前提是本地安装了gradle并且配置到了环境变量中)。

    gradlew和gradlew.bat

    这分别是linux下的shell脚本和windows下的批处理文件,它们的作用是根据gradle-wrapper.properties文件中的distributionUrl下载对应的gradle版本。这样就可以保证在不同的环境下构建时都是使用的统一版本的gradle,即使该环境没有安装gradle也可以,因为gradle wrapper会自动下载对应的gradle版本。
    gradlew的用法跟gradle一模一样,比如执行构建gradle build命令,你可以用gradlew build。gradlew即gradle wrapper的缩写。

    gradle仓库

    gradle有三种仓库,maven仓库,ivy仓库以及flat本地仓库。声明方式如下:

    maven{
          url "..."
    }
    ivy{
          url "..."
    }
    flatDir{
          dirs 'xxx'
    }
    有一些仓库提供了别名,可直接使用:

    repositories{
         mavenCentral()
         jcenter()
         mavenLocal()
    }

    gradle任务

    gradle中有一个核心概念叫任务,跟maven中的插件目标类似。
    gradle的android插件提供了四个顶级任务

    • assemble 构建项目输出
    • check 运行检测和测试任务
    • build 运行assemble和check
    • clean 清理输出任务

    参考:

    http://www.androidchina.net/2155.html

  • 相关阅读:
    linux shell在while中用read从键盘输入
    ubuntu14.04折腾迅雷xware
    select与epoll分析
    ubuntu 14.04下练习lua
    C++中的重载、覆盖、隐藏
    删除ubuntu旧内核
    fcntl函数加文件锁
    系统中断与SA_RESTART
    linux使用共享内存通信的进程同步退出问题
    leetcode-easy-others-268 Missing Number
  • 原文地址:https://www.cnblogs.com/ghj1976/p/5412673.html
Copyright © 2011-2022 走看看