Sunflat のブログ

ソフトウェア開発についての話題が多いかも

antでWebサイトに自動登録

新しいアプリを作った時,配布用Webページを作ったり宣伝用ポータルサイトアプリゲットとか)に登録するのがとっても大変なのだが,これをantのフィルタ機能を使って解決してみた.

せっかくだから方法を書いておこう.(なんか読者層が違う気もするが)


buildファイルにはこんな感じのタスクを用意

  <copy todir="${outDir}" filtering="yes" overwrite="true">
    <fileset dir="${inDir}" />
    <filterset begintoken="$${" endtoken="}" >
      <filtersfile file="keywords.properties" />
    </filterset>
  </copy>

そして,プロパティファイル(keywords.properties)にアプリ固有の情報を書いておく(native2asciiで変換が必要)

  JarNameBase=GiriJump
  AppDescName=3D-GiriJump
  LongDescKetai=壁が次々と迫ってくるので,ボタンを押して飛び越えろ!..
  LongDescApplet=壁が次々と迫ってくるので,画面をクリックして飛び越えろ!..

あとは,${inDir}に,プロパティファイルで定義した変数(${key}形式)を含んだ,テンプレートファイルを作る.

例えば説明用ページ

  <h1 align="center">${AppDescName} アプレット版</h1>
  <applet codebase="http://..." archive="${JarNameBase}_applet.jar"></applet>
  <p>${LongDescApplet}</p>

あるいは宣伝用ポータルサイトへの登録用ページ.これは,宣伝用ポータルサイトの登録フォームに,変数名を使って必要事項を書いて,とかでHTMLしたもの.送信先URLはフルパスに修正する必要あり.

  <form method=post action=...>
    <INPUT size=64 name=AppName value="${AppDescName}">
    <INPUT size=64 name=AppDescription value="${LongDescKetai}">
  ..

これで,antを実行すると,${outDir}に,キーワードが置換されたファイルが出力される.あとは,登録用ページを開いてボタンを押すだけで,ポータルサイトへの登録が完了!

アプリを作った時は,プロパティファイルのみを書き換えれば,面倒な登録作業が半自動化できて便利そう