私は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
。
次に、3 つのターゲットすべてが依存関係ツリーにあることを確認する必要があります。プロパティが設定されていない場合、それらは何もしません。