【发布时间】:2016-02-03 17:47:08
【问题描述】:
是否可以检查命令是否作为 ant 任务的一部分存在。例如,我想确保“yasm”命令作为 ant 任务的一部分存在。这可能吗?如果有,能举个例子吗?
【问题讨论】:
标签: ant
是否可以检查命令是否作为 ant 任务的一部分存在。例如,我想确保“yasm”命令作为 ant 任务的一部分存在。这可能吗?如果有,能举个例子吗?
【问题讨论】:
标签: ant
以下习惯用法可用于在环境的 PATH 中某处查找可执行文件。
<property environment="env" />
<available file="commandname"
filepath="${env.PATH}"
property="commandname.present"/>
【讨论】:
我能想到的最好方法是在后续目标中使用available 任务和if。如果你看一下task page,你会发现你可以检查是否存在某些东西,然后设置一个属性。例如:
<available file="/path/to/my/file" type="file" property="file.present"/>
然后在target 中你会说类似<target name='foo' if='file.present'>
这不会检查可执行权限,但会更接近。如果存在专门检查可执行权限的任务,您仍然可能会将其与目标中的if 结合使用。
最好使用ant copy任务,而不是自己尝试执行cp。这使其平台保持独立。
<copy todir"/some/target">
<fileset dir="/some/src"/>
</copy>
【讨论】: