我是 Ant 的新手(我来自 Maven),我有以下情况:
根据运行 Ant 脚本的系统是 Linux 64 位、Linux 32 位还是 MacOS 系统,我需要执行 3 个不同的操作。
我可以使用 Ant 执行此操作吗?
是的..您需要检查 os 系列以确定 linux 或 mac,并且在 linux 机器上还检查 os arch。这些条件将使您到达那里。
<condition property="mac">
<os family="mac" />
</condition>
<condition property="unix.32">
<os family="unix" arch="x86" />
</condition>
<condition property="unix.64">
<os family="unix" arch="amd64" />
</condition>
因此,在 ant 中,您将创建对每个目标执行任何需要执行的操作,例如设置每个架构独有的属性。如果设置了适当的属性,这些目标必须有条件地运行,例如:if=unix.64
在target
元素中。
然后,您需要确保所有三个目标都在依赖关系树中,如果未设置属性,它们将不会做任何事情。