Gradle学习笔记(二)
来源:互联网 发布:开淘宝企业店铺多少钱 编辑:程序博客网 时间:2024/05/18 00:44
Gradle仓库:
gradle有三种仓库,maven仓库,ivy仓库以及flat本地仓库,各种仓库声明方式如下:
maven{ url "...."}ivy{ url "...."}flatDir{ url "...."}</span>
Gradle任务:
gradle的Android插件提供了四个顶级任务:
assemble 构建项目输出check 运行检测和测试任务build 运行assemble和checkclean 清理输出任务</span>执行任务可以通过gradlew+任务名称的方式执,执行一个顶级任务会同时执行与其依赖的任务,比如你执行:
gradlew assemble
他会同时执行:
gradlew assembleDebug
gradlew assembleRelease
这时会在你项目的build/outputs/apk或者build/outputs/aar目录生成输出文件。
在Android Studio中可以打开右侧gradle视图查看所有任务。
常见操作:
- 导入本地jar包
Android studio 导入本地jar包除了将jar包放到模块的libs目录中外,还要在该模块的build.gradle文件中的dependencies节点下进行如下声明:compile files('libs/xxx.jar') //依赖libs目录下的某个jar包
注:大家可能注意到在build.gradle文件的dependencies节点下有这样一句话:compile fileTree(dir: 'libs', include: ['*.jar']) 意思是依赖libs目录下的所有jar包,就是说我们不用自己再写了,初始化的时候已经写好了。
- 因为maven的中央仓库已经有很多可用的资源了,所以用的人也很多,导入maven库:
就像Androidstudio初始化的时候再build.gradle文件里已经导入过一次了:compile 'com.android.support:appcompat-v7:22.2.0' //依赖appcompat库
我们在导入的时候,格式为:compile 'groupId:artifactId:version'
- 依赖某个project,在Eclipse中经常遇到一个项目依赖工程下的另一个项目的情况,类似的Androidstudio也有:
因为我们的项目是多模块的,假设我们的项目有两个模块:本身的app和module_1,但是app是依赖module_1的,这个时候我们就需要在app的build.gradle文件中的dependencies节点下进行如下声明:compile project(':module_1')
再在settings.gradle文件中包含进所有的模块:include ':app','module_1'
因为此时module_1是作为一个库存在的,所以在它本身的build.gradle文件中需要如下声明://声明插件,这是一个Android库,应该是com.android.libraryapply plugin: 'com.android.library'
而不同于app模块的 应用程序 的声明:
注意:作为library的模块module_1的build.gradle文件的defaultConfig中是不允许声明applicationId的,而app模块需要声明这个applicationId:
今天就到这吧,因为开始上班了,后面更新的可能会慢点,有不正确的地方还请指正。
0 0
- Gradle学习笔记(二)
- Gradle学习笔记(二)
- gradle 教程学习笔记(二)
- Gradle学习笔记(二)构建脚本
- 【二】Gradle 基础知识学习笔记
- gradle学习笔记(二)第一个简单demo
- Gradle学习笔记(二)build脚本入门
- gradle学习笔记(二) Groovy基础
- Gradlle Gradle for Android 学习笔记(二) Gradle Wrapper 入门
- Gradle学习历程(二)
- Gradle学习笔记(一)
- Gradle学习笔记(一)
- Gradle 学习笔记(三)
- Gradle学习笔记(四)
- Gradle学习笔记(五)
- Gradle 学习笔记(五)
- Gradle学习笔记 Gradle命令行
- AS之gradle学习二(指南)
- SQLite初级操作
- PHP常见出错及解决方案(5)
- linux字符截取
- 北大OJ2262
- vim使用
- Gradle学习笔记(二)
- Java-----使用JNI调用本地方法
- JSP语法的练习
- 七牛---关于Node.js SDK的各种Demo
- android的消息处理机制(图+源码分析)——Looper,Handler,Message
- mongdb及它的mapreduce的坑
- 设备驱动的艺术之旅 - 驱动和内核的关系
- 关于图像加密域检索的几种方法
- 0C-013.OC中的description方法