目录:

  • 1. Project自带的属性
  • 2. Project额外的属性
  • 3. gradle的静态配置属性
  • 4. gradle的动态配置属性

1. Project自带的属性

  • project:Project本身对象
  • name:Project的名字
  • path:Project的绝对路径
  • description:Project的描述信息
  • buildDir:Project构建结果存放目录
  • version:Project的版本号

project自带的属性可以直接用点号来访问。

println "Description of project $name: "+project.description

在project中可以直接调用它的属性。
但是在task需要显示调用属性,因为task可能有project相同的属性。

version = 'this is the project version'
description = 'this is the project description'task showProjectProperties << {println versionprintln project.descriptionprintln description
}

2. Project额外的属性

我们可以定义额外的属性, 只需要使用ext命名空间。

project.ext.myProp='myValue'
ext{someOtherProp=123
}assert myProp=='myValue'
println project.someOtherProp
ext.someOtherProp=567

3. gradle的静态配置属性

gradle的属性可以通过gradle.properties中引进,访问可以直接通过project.属性来访问:

assert project.exampleProp=='myValue'task printGradleProperties <<{println "Second property :$someOtherProp"
}

4. gradle的动态配置属性

我们不仅可以在gradle.properties中配置静态变量,还可以在命令行中动态配置变量

对于这个使用:

task printMyProperties <<{println myProperties
}

我们如果直接使用gradle -q printMyProperties 就会报错

项目属性

我们需要 -P 来指定参数。

gradle -q -P myProperties='this is -P params'  printMyProperties

系统属性

我们需要 -D 来指定参数。要以“org.gradle.project”为前缀。

gradle -q -D org.gradle.project.myProperties='this is -D params'  printMyProperties

环境变量属性

每个属性前面都要加上一个ORG_GRADLE_PROJECT_的前缀

ORG_GRADLE_PROJECT_propertyName=someValue

当我们再去执行printMyProperties这个task的时候就不用传参数了。

Gradle属性(四)相关推荐

  1. 代理设置。 安卓工作室配置用http代理。gradle可能需要这些http代理设置去访问互联网。例如下载依赖。 你想要复制ide的代理配置到这个项目的gradle属性文件吗?...

    代理设置. 安卓工作室配置用http代理.gradle可能需要这些http代理设置去访问互联网.例如下载依赖. 你想要复制ide的代理配置到这个项目的gradle属性文件吗? 查看更多细节,请参阅开发 ...

  2. Position属性四个取值用法和区别

    Position属性四个取值用法和区别 在初学css的过程中常常会碰到设置定位的问题,大多数初学者都是大概明白,如果不好好弄清楚将会给以后的开发带来困难,经过本小菜对其他文章的浏览,自我总结如下: 目 ...

  3. box-shadow属性四个值_重学前端:什么是盒子模型?标准盒子模型有哪些属性和尺寸计算?...

    盒模型 盒子模型是网页布局的基石.它有边框.外边距.内边距.内容组成. 盒子由上到下依次分为五层,它们自上而下的顺序是: border 边框 content + padding 内容与内边距 back ...

  4. java读取gradle属性,Spring Boot获取Gradle中包的属性

    我试图将我的项目从Maven构建转换为Gradle . 该项目目前使用Spring Boot . 在我目前的maven配置中,我有 com.fasterxml.jackson.datatype jac ...

  5. Position属性四个值:static、fixed、absolute和relative的区别和用法

    在用CSS+DIV进行布局的时候,一直对position的四个属性值relative,absolute,static,fixed分的不是很清楚,以致经常会出现让人很郁闷的结果.今天研究了一下,总算有所 ...

  6. box-shadow属性四个值_flex笔记1——flex-direction属性

    flex是 "Flexible Box" 的缩写,意为弹性布局.使用弹性布局有一个基本的概念,采用flex元素,称之为flex容器(flex container),简称为" ...

  7. python 内置属性__setattr___python 属性四种管理方法property,descriptor, __get/setattr__, __getatribute __...

    总是在代码里面看到,__set__,__get__,__getattr__,__setattr__,__getatribute__,property. 这些东东的通常作用基本是属性拦截,这里做个笔记记 ...

  8. Android Gradle(四) AGP使用与详解

    AGP的使用主要是在模块build.gradle 中android节点的配置,由于android节点的配置无法查看源码,所以就只能熟能生巧了,死记硬背(●'◡'●). 下面我们来看下android节点 ...

  9. Bootstrap4+MySQL前后端综合实训-Day01-PM【position定位的四种方式、Flex布局语法教程及案例(概念、容器属性、项目属性)、双飞翼布局复习、Bootstrap4 教程】

    [Bootstrap4前端框架+MySQL数据库]前后端综合实训[10天课程 博客汇总表 详细笔记] 目   录 HTML中的三种元素(块元素.内联元素.内联块元素) position定位的四种方式 ...

最新文章

  1. Android中minSdkVersion、targetSdkVersion、maxSdkVersion的作用
  2. VTK:图像平移范围用法实战
  3. OpenStack、Docker、KVM被评为最火的云开源项目
  4. 锁表的进程和语句,并杀掉
  5. SpringCloud的学习记录(1)
  6. ipv6 访问内网_【内网渗透】—— 隐藏通信隧道技术之网络层隧道技术
  7. 关于多线程的几个问题
  8. 写出杨辉三角_认识杨辉三角
  9. 网络助手之NABCD
  10. 《Redis开发与运维》学习第四章
  11. php 二级导航,导航下面的二级导航,显示和隐藏,
  12. 《MLB棒球创造营》:走近棒球运动·洛杉矶道奇队
  13. CURL -w 参数详解
  14. 昆仑通泰触摸屏与v20变频器uss通讯,控制变频器
  15. 基于JAVA演唱会购票系统计算机毕业设计源码+系统+数据库+lw文档+部署
  16. 在iOS 14中使用带有SF Symbols 2的彩色图标
  17. 互联网是什么 互联网是怎么形成的
  18. css3之[2D转化,动画,3D转化] 彩蛋之3D立方体
  19. python 福利_python 处理json
  20. 【接入指南 之 云云接入】快速接入HONOR Connect平台(上)

热门文章

  1. socket connec连接超时处理
  2. 对弈程序基本技术---最小-最大搜索
  3. Python习题11
  4. C++中的指针与引用
  5. 精美技术图赏|技术精华
  6. SQL 查找是否存在,别再 COUNT 了,很耗费时间的
  7. Java集合框架:Arrays工具类
  8. LiveVideoStackCon 2022 上海站 专题抢先看(2)
  9. ffplay.c学习-7-以音频同步为基准
  10. Golang 性能优化实战