Gradle中的project

一、Project

Gradle的执行流程

  1. Initialization初始化阶段 (解析整个工程中的所有Project,构建所有的Project对应的project对象)
  2. Configuration配置阶段 (解析所有projects对象中的task,构建好所有task的拓扑图(有向无环图))
  3. Execution执行阶段(执行具体的task及其依赖的task)

settings.gradle用于解析生成Project

build.gradle用于判断是不是一个Project

每个Project都是在build.gradle中去配置和管理的,这些build.gradle最终会被Gradle编译为Project字节码

1.编写settings.gradle

rootProject.name = 'gradle-project'
include 'gradle-project-1'
include 'gradle-project-2'
include 'gradle-project-3'

2.创建目录结构

可以通过gradle wrapper生成gradle目录下文件,gradle-wrapper.properties用于指定gradle版本

3.使用gradle projects查看

使用gradle projects命名查看project

二、Project相关api

可以查看org.gradle.api.Project的属性和方法
  1. Project里含有一个容器TaskContainer接口.用与创建,存取及管理所有的Task
  2. Project里含有一个容器ConfigurationContainer接口,来管理对应的项目配置
  3. Project里含有一个DependencyHandler接口用与管理项目的依赖
  4. Project里含有一个RepositoryHandler接口用来注册和管理依赖所需的Repository

1.project属性

可用同通过ext属性定义额外的属性

属性名作用
group当前项目的组名
name当前项目的名字
version当前项目的版本号,默认值:unspecified
parent当前项目的父项目
project当前项目的实例
allprojects当前项目及其所有子项目的集合
rootProject当前项目层次结构中的根项目
subprojects当前项目的子项目集
defaultTasks当前项目的默认任务的名字集当前构建没有提供任务名时会执行这些默认任务
tasks当前项目的任务集
buildDir当前项目的编译目录(自动生成)默认值 porjectDir/build
path当前项目的路径(绝对路径)
logger当前项目的日志器,可以用来在 build 文件中写日志

2.project方法

可以通过groovy语法定义额外的方法

方法名作用
apply应用插件或脚本
task定义一个任务
project获取指定项目的 project 对象
allprojects配置当前项目以及它的每个子项目
subprojects配置当前项目的所有子项目
beforeEvaluate添加一个闭包,她会在项目开始评估前立即执行
afterEvaluate可以添加一个闭包,它会在项目完成评估后立即执行。当执行属于该项目的构建文件时,会通知此类监听器。
configure通过闭包配置对象集合
file解析文件
hasProperty判断当前项目有没有指定属性
setProperty给属性设置值
findProperty找特定属性,返回它的值,如果没有,返回null
copy拷贝特定文件

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值