Ant/ループ処理をする

Ant/ループ処理をする

Apache Ant でループ処理をしたいときには標準ではできない。やるには Ant-Contrib というライブラリを使う

Ant-Contrib Tasks

インストール

ANT Contrib - Browse /ant-contrib/1.0b3 at SourceForge.net

このへんから、ant-contrib-1.0b3-bin.tar.gz をダウンロードして解凍する。中の ant-contrib-1.0b3.jar を使う

Eclipse で使うならば

  • Window
    • Preference
      • Ant
        • Runtime

で適当な所に Add External Jars で追加する

普通に使うならAntのインストール位置のlib以下にコピー

とりあえず使ってみる

まずAntのXMLの頭で

<taskdef resource="net/sf/antcontrib/antlib.xml" />

のようにしてタグを使えるようにする

↑のインストールのように環境にセットせずプロジェクトに同梱させたい場合は

<taskdef resource="net/sf/antcontrib/antlib.xml" >
    <classpath>
        <pathelement location="lib/ant-contrib-1.0b3.jar"/>
    </classpath>
</taskdef>

のように直接書いても使える

<for list="a,b,c,d,e" param="hoge">
    <sequential>
        <echo>piyopiyo @{hoge}</echo>
    </sequential>
</for>

これを実行してループが動けばOK

決まったリストをループ

↑の例にあるように

<for list="a,b,c,d,e" param="hoge">
    <sequential>
        <echo>piyopiyo @{hoge}</echo>
    </sequential>
</for>

ファイルの存在でループ

<for param="file">
    <path>
        <fileset dir="${classpathdir}/hoge" includes="*.txt"/>
    </path>
    <sequential>
        <echo>@{file}</echo>
    </sequential>
</for>

Tag

java/ant/loop_proc.txt · 最終更新: 2019-06-14 16:53 by ore