今日の役に立たない一言 - Today’s Trifle! -

古い記事ではさまざまなテーマを書いていますが、2007年以降はプログラミング関連の話がほとんどです。

続・Antタスクの実行順序を制御する方法

博多方面に出張が終わったあと、偶然(???)きしださんに遭遇。そのまま飲み。
まあ、いろんな話をしたが、ここで紹介するのに適切な話としては、Antタスクの話が最適か。
二人で話し合った結果、「makeはMakefileに書かれた最終的なターゲットファイルの生成を目的に動作する」が、「Antは単純にbuild.xmlベースに動作する」ということ。
つまり、makeは生成をポリシーとしているが、Antのポリシーは生成ではない、ということを意味する。
それってある意味 Ant の弱点とも言える。最終的にファイルAとBとCとDとEが生成される場合を考える。A+BでCが生成され、C+DでEが生成されるとする。makeでは必ずEが生成されるように動作するが、Antは明示的にbuild.xmlをそのように書かない限り、そのように動作するとは限らない。