高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

Antビルドファイル内でプロパティの文字列置換

プログラムでAntビルドファイルを書いていて、プロパティの文字列を修正したい場合。いったんファイルに出力してタスクを使って置換することも出来るのですが、一時ファイルの処理がなかなかめんどくさい。
そんなわけで、プロパティの文字列を直接置換する方法。Windows PC上で実行する場合は事前にCygwinをインストールしパスを通しておく必要があります。

<property name="invalue" value="somevalue"/>
<exec executable="sed" inputstring="${invalue}" outputproperty="outvalue">
	<arg value="-e" />
	<arg value="s/some/dest/" />
</exec>
<!-- outvalue = destvalue -->

応用次第でいちいちカスタムタスクを作らなくても、結構いろんなことが出来そう。
やはりこういうちょっとしたことをするときにCygwinは便利。