7


1

Ant条件-最初に「if」または「unless」が来る

質問

antターゲットが_if_と_unless_の両方を使用する場合、どちらが最初に評価されますか?

鶏肉と卵のどちらが先ですか? . . .

    Dinner time. Chicken is served!

最初に鶏の特性を評価しますか? または卵のプロパティ?

1 Answer


10


ターゲットが呼び出される前にプロパティが設定されているか設定されていないため、実際には評価の問題ではありません。

編集:1.8.1ソースを見て、ロジックは次のとおりです。

if (!testIfAllows()) {
    project.log(this, "Skipped because property '" + project.replaceProperties(ifCondition)
            + "' not set.", Project.MSG_VERBOSE);
    return;
}
if (!testUnlessAllows()) {
    project.log(this, "Skipped because property '"
            + project.replaceProperties(unlessCondition) + "' set.", Project.MSG_VERBOSE);
    return;
}

したがって、「if」がパスしない限り、「unless」は重要ではありません。 ただし、これらはプロパティの評価とは関係ありません。 それらが設定されているかどうかを確認するためにそれらを検索します。