gpt4 book ai didi

ant - 仅当未设置某些环境变量时如何调用某些 Ant 目标?

转载 作者:行者123 更新时间:2023-12-04 10:21:41 25 4
gpt4 key购买 nike

我要不打电话在有特定环境变量的情况下,build.xml 中的一个目标。

使用 Ant 1.7.0,以下代码不起作用:

<property environment="env"/>
<property name="app.mode" value="${env.APP_MODE}"/>

<target name="someTarget" unless="${app.mode}">
...
</target>

<target name="all" description="Creates app">
<antcall target="someTarget" />
</target>

目标“someTarget”执行是否有环境变量 APP_MODE或不。

最佳答案

unless 的文档属性说:

the name of the property that must not be set in order for this target to execute, or something evaluating to false



所以在你的情况下,你需要把 姓名 的属性(property),而不是属性(property)的评估:
<target name="someTarget" unless="app.mode">    
...
</target>

笔记
  • 在 Ant 1.7.1 及更早版本中 ,这些属性只能是属性名称。
  • 从 Ant 1.8.0 ,您可以改为使用属性扩展;值为 true(或 on 或 yes)将启用该项目,而 false(或 off 或 no)将禁用它。
    其他值仍假定为属性名称,因此仅当定义​​了命名属性时才启用该项目。

  • 引用
  • if/unless on the ant manual
  • 关于ant - 仅当未设置某些环境变量时如何调用某些 Ant 目标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3977542/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com