- Home ›
- Apache Antの使い方 ›
- Moveタスク(移動) ›
- HERE
moveタスク
広告
ここではビルドの途中でファイルを移動する方法について見ていきます。「move」タスクを使います。
基本となるのは下記の属性です。
属性 | 説明 | 必須 |
---|---|---|
file | 移動するファイル | 必須 |
tofile | 移動先となるファイル | tofileかtodirのどちらかが必須 |
todir | 移動先のディレクトリ | tofileかtodirのどちらかが必須 |
overwrite | 移動先のファイルが新しくても既存のファイルを上書きします(デフォルトはtrue) | × |
preservelastmodified | 移動されたファイルに、オリジナルソースファイルと同じ最終更新時刻を設定します(デフォルトはfalse) | × |
基本的な使い方は「copy」タスクと似ています。
移動元のファイルを「file」属性で、移動先のファイルかディレクトリを「tofile」属性か「todir」属性で指定します。また、デフォルトでは、移動元ファイルが移動先ファイルよりも新しいか、 移動先ファイルが無い場合にのみ、ファイルが移動されます。
例えば下記のように記述します。
<move file="./class/test.class" todir="./to"/>
では実際に試してみましょう。今回の構成は下記のようになっています。
-sample9 build.xml | +--src test.java | +--class test.class | +--to
コンパイル後に「to」ディレクトリにクラスファイルを移動させてみます。
コンパイルするプログラムファイルは下記です。
public class test{ public static void main(String args[]){ System.out.println("Antの実験です"); } }
ビルドファイルは下記です。
<?xml version="1.0" encoding="Shift_JIS"?> <project name="antsample" default="compile"> <target name="compile"> <javac srcdir="./src" destdir="./class" /> <move file="./class/test.class" todir="./to" /> </target> </project>
ではantを実行してみます。
コンパイル後にファイルが移動されているのが確認できます。
( Written by Tatsuo Ikura )