Gradle使用的简单了解
来源:互联网 发布:双色球开奖历史数据库 编辑:程序博客网 时间:2024/05/16 18:56
Gradle 认识
参考博客:http://www.enjoytoday.cn/categorys/Gradle
gradle是一个用于构建工程的工程配置脚本,它可以很便捷的帮助我们构建管理工程结构,使得我们的工程结构根据可读、可维护性。由于gradle的核心是Groovy,所以gradle的主战场在对于java项目的构建。接下来,我就简单就gradle在构建android项目做一个介绍。 目前,android开发大多已经转移到Android studio开发工具开发上来了,而android studio则是通过gradle构建的工程管理,android studio将模块分为两大类别,一个是project,一个是module,project 用于管理子工程的基本gradle属性,如gradle的脚本版本、仓库类型、自定义仓库地址、和一些子module通用配置,可以自由发挥。同时project也负责将真正需要构建的源码工程配置导入进来,其主要配置在setttings.gradle中完成,子module则是通过子moudle导入的主目录下build.gradle配置基本结构信息和依赖信息进行管理,整个结构相对比较简单,结构如下所示:
project- -build.gradle #project 基本gradle配置,如版本信息、仓库类型等 -settings.gradle #子工程配置脚本,指定子工程位置 -build #编译输出 -.gradle #编译配置相关 -gradle #编译配置相关 -gradle.properties #编译配置相关 -local.properties #配置基本编译参数,SDK,NDK等 -gradlew #编译环境搭建 -gradlew.bat #编译环境搭建 -moudle-- #子工程 --build.gradle #编译配置脚本,主要的工程编译控制脚本 --build #编译输出 --...
主要结构就是这些,对于我们开发者而言其实只需要关注三个文件就可以了:
1)project .build.gradle:控制gradle编译版本可依赖仓库配置,常见的模式如下:
buildscript { //配置编译脚本依赖版本,采用的是gradle wrapper repositories { jcenter() //配置依赖库路径(构建脚本或者其他共用资源依赖库版本), //android studio默认使用的是jcenter库,一个maven库,你自己也可以指定仓库地址 } dependencies { classpath 'com.android.tools.build:gradle:2.2.3' //gradle版本 // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }}allprojects { //子工程通用配置 repositories { mavenCentral() //依赖配置,采用的是maven中央仓库,可以指定 }}task clean(type: Delete) { //clean 任务,清除更新之前的配置输出. delete rootProject.buildDir }
2)project.settings.gradle:控制子module构建
include ':app', 'app2' //导入子module,默认子module在project主目录下,module名为目录名,也可自定义module地址//如下,配置自定义路径mouduleinclude(':test)project(':test').projectDir = new File('moudleRoot/test') //和java用法类似,指定file.
3)project.module.build.gradle:module工程管理脚本,包括基本的依赖、编译模块控制等,这是核心。
apply plugin: 'com.android.application' //导入插件android { //android基本配置模块 compileSdkVersion 25 //sdk编译版本 buildToolsVersion "25.0.2" //编译工具版本(aapt之类) defaultConfig { //默认配置,如applicationId、versionCode、versionName等通用配置。 applicationId "www.enjoytoday.cn" minSdkVersion 19 targetSdkVersion 25 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" //junit测试,可以选择要或者不要 } buildTypes { //编译类型,默认两种编译类型,debug和release区别版本信息,可在各个版本类型中作区别配置 release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } debug{ .......... } } //版本控制,一般用于多渠道打包 productFlavors{ umeng{ } baidu{ } } sourceSets{ //目录结构配置,注意除了manifest位string外,其他的均为list类型,可配置多个源 main{ java.srcDirs ['src/main/java'] res.srcDirs ['src/man/res'] aidl.srcDirs ['src/main/java'] renderscript.srcDirs = ['src/main/java'] assets.srcDirs = ['src/main/assets'] jniLibs.srcDirs = ['libs'] //需要添加so依赖时,需要指定的so路径 manifest.srcFile 'AndroidManifest.xml' } }}repositories { //添加一个本地仓库,指定aar路径,也可以在project的build.gradle中指定 flatDir { dirs 'libs' }}dependencies { //工程依赖库 compile fileTree(dir: 'libs', include: ['*.jar']) compile project(':pushlibs') compile 'com.android.support:appcompat-v7:25.2.0' compile 'com.android.support.constraint:constraint-layout:1.0.2' compile (name:'XXXXXXX', ext:'aar') //添加一个aar依赖}
如上就是andorid工程相关的gradle的一个基本知识的介绍,详细使用待续…
阅读全文
1 0
- Gradle使用的简单了解
- gradle的简单使用
- Gradle简单使用
- gradle简单使用
- Gradle task简单使用
- 简单了解文档碎片DocumentFragment的使用
- XMPP的简单了解及使用(1)
- XMPP的简单了解及使用(2)
- XMPP的简单了解及使用(3)
- xmPP的简单了解及使用(4)
- Android FlexboxLayout的简单了解以及使用
- 了解数据库和mysql的简单使用
- 简单的Gradle命令
- gradle的简单介绍
- gradle 详解——你真的了解Gradle吗?
- gradle 详解——你真的了解Gradle吗
- Gradle安装与简单使用
- 使用Gradle创建一个最简单的Spring Boot项目
- 配置集群ssh免密码登录
- 【HDU1176】免费馅饼
- 杨辉三角具体实现和图解
- 十分钟搞清字符集和字符编码
- PyTorch在64位Windows下的编译
- Gradle使用的简单了解
- Web用户登录---验证码的设计与实现
- items2 solaried配置
- 请实现一个算法,确定一个字符串的所有字符是否全都不同
- 判断一个序列 是不栈的输出判断一个序列
- 搜索 G
- 学习总结:KMP算法
- Android中R文件路径
- Linux的目录结构