蚂蚁组件 axure 蚂蚁

每隔一段时间,我会想起Ant属性的一些细微差别 ,一旦忘记它们,在与Ant交互时会引起混乱。 特别是, Ant属性 通常是不可变的 (不包括Ant 1.8以来的局部属性 ),并且在其第一次设置时“永久”设置的事实可能会导致稍微令人惊讶的结果。

《 蚂蚁手册 》的属性部分指出:“通常无法更改属性值,一旦设置了属性,大多数任务将不允许修改其值。” 该手册中有关“ 属性”任务的部分补充说:“属性是不可变的:谁先设置属性,谁会先冻结该属性,然后再进行其余构建; 它们绝对不是变量。”

属性定义的顺序会影响其设置。 通常,一旦设置了属性,以后就无法在同一构建文件或被调用的构建文件中重新定义,则无法更改其值。 此外,还有一组已经定义的属性,这些属性通常无法在Ant构建文件中重新定义。 这些包括Java System属性和内置的Ant属性 。

尽管在Ant构建文件中定义的属性不能覆盖默认的Ant内置属性或Java系统属性的值,但是通常可以使用Ant启动器上的-D选项设置这些属性名称的这些值。 但是,即使使用-D选项,也无法重置其中的少数。 例如,即使通过-D选项作为参数传递,也无法从Ant构建文件的路径和名称更改ant.file 。 当然,这可能也是一样,因为似乎没有充分的理由假装Ant构建文件不是实际的文件。

为了演示上述Ant属性解析的“规则”,可以使用以下简单的Ant构建文件。

build.xml在Ant中显示属性

<project name="Project" default="showProperties" basedir="."><property environment="env"/><target name="showProperties"><!-- Java System Properties --><echo message="java.home: ${java.home}" /><echo message="user.home: ${user.home}" /><!-- Custom Properties --><echo message="name.last: ${name.last}" /><echo message="name.first: ${name.first}" /><!-- Ant Built-in Properties --><echo message="ant.file: ${ant.file}" /><echo message="ant.version: ${ant.version}" /><echo message="ant.java.version: ${ant.java.version}" /></target></project>

在此示例中,有几个Java系统属性,几个定制属性和一些Ant内置属性。 这些使我可以轻松地演示如何覆盖或不覆盖属性。 下一个屏幕快照显示了属性的“默认”设置,没有被覆盖。 根本没有定义两个自定义变量,但是其他两个(Java系统和Ant内置属性)具有为Ant构建自动设置的值。

下一个屏幕快照显示了尝试通过-D参数传递为构建中使用的属性提供值的尝试。 如示例所示,即使系统属性和Ant内置属性也可以使用-D属性设置覆盖,但ant.file属性不会被覆盖。

指定Ant文件中使用的属性的一种常见方法是使用Property任务在Ant构建文件中指定它们。 下一个代码清单将内部定义的属性添加到上面显示的文件中。

build.xml在内部定义属性

<project name="Project" default="showProperties" basedir="."><property environment="env"/><property name="user.home" value="/bin" /><property name="java.home" value="java" /><property name="name.last" value="Flintstone" /><property name="name.first" value="Fred" /><property name="ant.file" value="text.txt" /><property name="ant.version" value="1.8." /><property name="ant.java.version" value="6" /><target name="showProperties"><!-- Java System Properties --><echo message="java.home: ${java.home}" /><echo message="user.home: ${user.home}" /><!-- Custom Properties --><echo message="name.last: ${name.last}" /><echo message="name.first: ${name.first}" /><!-- Ant Built-in Properties --><echo message="ant.file: ${ant.file}" /><echo message="ant.version: ${ant.version}" /><echo message="ant.java.version: ${ant.java.version}" /></target></project>

下一个屏幕快照显示了运行此Ant文件时没有-D参数提供的任何属性。 请注意,内部规范成功设置的唯一属性是自定义属性。 Java系统属性和内置的Ant属性不受内部设置属性的影响。

通常,Ant的属性是不可变的,这具有很多优点。 但是,当仅仅因为在一个特定的Ant构建文件(或该构建文件引用的属性文件)中声明了一个属性而实际上是为该属性设置了该属性的值时,一定要谨慎。 如果该属性已在其他位置设置,则本地重新定义该属性的尝试只会错误地发布该属性的值,而该值实际上并不适用。

参考:来自JCG合作伙伴 Dustin Marx的Ant Properties Nuances , 来自“实际事件的启发”博客。

翻译自: https://www.javacodegeeks.com/2013/08/ant-properties-nuances.html

蚂蚁组件 axure 蚂蚁

蚂蚁组件 axure 蚂蚁_蚂蚁属性细微差别相关推荐

  1. 蚂蚁p8多少股票_蚂蚁金服上市了,小编不想努力了。

    今天咱们来唠唠这两天最热的话题:?蚂蚁金服. 昨晚,杭州一整栋楼都在欢呼,听说那是「财富自由」的声音. 1 之前都是小道消息,这次是官宣了. 7月20日,支付宝母公司蚂蚁集团宣布,将启动在上市的计划, ...

  2. 怎么关闭蚂蚁庄园_蚂蚁庄园账户如何注销

    怎么关闭蚂蚁庄园_蚂蚁庄园账户如何注销 蚂蚁庄园的小鸡不喂它经常会收到提醒,非常烦人.那么,怎么关闭蚂蚁庄园_蚂蚁庄园账户如何注销呢?下面让我来给大家介绍下吧,希望对大家有所帮助. 工具/原料 蚂蚁庄 ...

  3. 邮箱无权访问 上的 jira是怎么回事_蚂蚁庄园答案2020年11月6日汇总 小鸡宝宝考考你每日答案为你呈上|蚂蚁|庄园-360GAME...

    川北在线核心提示:原标题: 蚂蚁庄园答案2020年11月6日汇总 小鸡宝宝考考你每日答案为你呈上 支付宝蚂蚁庄园小课堂11月6日答案是什么呢?2020年11月6日支付宝蚂蚁庄园小课堂题目是健身过后什么 ...

  4. 苹果免密支付怎么关闭_支付宝蚂蚁保险怎么关闭?蚂蚁保险怎么样?

    支付宝软件里面的功能有很多,日常生活中,我们除了可以使用支付宝软件来购物以外,还可以使用支付宝来购买保险哦,很多的用户想知道支付宝蚂蚁保险怎么关闭,下面进行说明. 取消在支付宝上买保险有以下三个步骤: ...

  5. 如何在微信小程序上开发一个「蚂蚁森林」和「蚂蚁庄园」结合体?

    你在蚂蚁森林中种了几棵树? 你在蚂蚁庄园中捐赠了几颗蛋? 「蚂蚁森林」和「蚂蚁庄园」是支付宝分别在 2016 年 8 月和 2017 年 8 月上线的两个网上公益活动,通过游戏互动和激励来培养用户的低 ...

  6. 蚂蚁金服烈元:蚂蚁网络代理演进之路

    2019 年 10 月 27 日,又拍云联合 Apache APISIX 社区举办 API 网关与高性能服务最佳实践丨Open Talk 杭州站活动,蚂蚁金服技术专家烈元做了题为<蚂蚁金服网络代 ...

  7. c语言蚂蚁王国的货币系统,蚂蚁王国的探索之旅

    大自然的鸟语花香.雨雪虫鸣,总能激起孩子们无限遐想和探索欲望.成群结队的小蚂蚁闯入孩子们的生活,草地上.墙脚边.....随处可见小蚂蚁的身影.让我们开启一场快乐而有意义的"蚂蚁王国探秘之旅& ...

  8. 计算机 蚂蚁搬家 教案,《观察蚂蚁搬家》教学设计

    --三年级上册第四单元教学设计(一) 目标定位: 1.培养学生的观察能力,在观察中体验生活的乐趣. 2.激发学生观察的欲望.写的兴趣. 3.了解人与自然的关系. ●要点阐述: 通过创设情境.口语交际. ...

  9. 从遥感卫星(Rapideye)的视角见证“蚂蚁森林”的生长——以“蚂蚁森林1号林”为例

    ** 从遥感的视角见证"蚂蚁森林"的生长--以"蚂蚁森林1号林"为例 ** 一.前言 相信不少的朋友起床第一件事情就是打开支付宝蚂蚁森林,去收前一天低碳消费所获 ...

最新文章

  1. 通过 “函数对象”看javascript函数
  2. 使用jstack 发现死锁
  3. H3C交换机引发的奇葩故障
  4. MyCat数据库分片
  5. 扩大博士研究生招生规模!
  6. 最新成果!超越AlphaZero!DeepMind让AI制霸「元宇宙」
  7. 【转】火星坐标、百度坐标、WGS-84坐标相互转换及墨卡托投影坐标转经纬度JavaScript版...
  8. Spring-web-HandlerMethodReturnValueHandler
  9. 量子计算机加密货币,量子计算机会打击到加密货币吗?
  10. python社区版如何下载库_pycharm社区版在哪里下载
  11. RunLoop已入门?不来应用一下?
  12. Android平台下的ToDoList
  13. 织梦DedeCMS从入门到精通建站视频教程全集
  14. 视频剪辑配乐技巧 视频剪辑配音推荐
  15. OSChina 周六乱弹 —— 网恋有风险面基需谨慎
  16. 怎么快速了解一个新的项目
  17. 电脑网正常,除了IE之外其他浏览器都能正常上网,IE不能上网解决办法
  18. 一个老百姓眼中的次贷危机
  19. uni-app小程序
  20. 病毒无孔不入:电邮一打开病毒自然来(转)

热门文章

  1. SoundHound Inc. Programming Contest 2018[C. Ordinary Beauty]
  2. 句法分析(syntactic parsing)在NLP领域的应用是怎样的
  3. 深入理解分布式系统中的缓存架构(下)
  4. 选择大公司还是小公司
  5. 面象对象设计6大原则之三:里氏替换原则
  6. SpringCloud配置中心内容加密
  7. java实现邮件发送准备工作(前期配置)
  8. 满足其中一个条件则可_农村分户好处多,但并非人人都可分户!满足这4个条件才可以申请...
  9. ToolProvider.getSystemJavaCompiler() return null 的解决方法
  10. 怎么实现阴影效果呢?