ant-contrib の for/foreach ループは、"break" または "continue" ステートメントと同等のものをサポートしていますか? 私が知る限り、そうではありません。
実行可能な回避策はありますか?
ありがとう -T
ant-contrib の for/foreach ループは、"break" または "continue" ステートメントと同等のものをサポートしていますか? 私が知る限り、そうではありません。
実行可能な回避策はありますか?
ありがとう -T
この動作を実装する簡単な方法はありませんが、次の提案が役立つかもしれません。
for
タスクを使用します(つまり、foreach ではありません)。keepgoing
属性を true に設定しますfail
タスクを条件付きで使用します。ブレークする必要があることを検出するたびに、プロパティを定義することでブレークのようなものを取得できますmyBreakProperty
<for list="a,b,c,d,e" param="letter" keepgoing="true">
<sequential>
<if>
<equals arg1="@{letter}" arg2="c" />
<then>
<property name="myBreakProperty" value="nevermind the value"/>
</then>
</if>
<fail if="myBreakProperty"/>
<echo>Letter @{letter}</echo>
</sequential>
</for>
出力は次のようになります。 Letter a Letter b
continueのようなものを取得するには:
<for list="a,b,c,d,e" param="letter" keepgoing="true">
<sequential>
<if>
<equals arg1="@{letter}" arg2="c" />
<then>
<fail/>
</then>
</if>
<echo>Letter @{letter}</echo>
</sequential>
</for>
出力は次のようになります。 Letter a Letter b Letter d Letter e