Apache Ant

Apache Ant（アパッチ アント）は、ビルドツールソフトウェアである。

GNU make のJava版ともいえるものであり、オペレーティングシステム (OS) など特定の環境に依存しにくいビルドツールである。XML文書でビルド（ソフトウェア構築）のルールを記述することが特徴である。統合開発環境EclipseにはAntプラグインが標準で内蔵されている。元々 Apache Tomcat をビルドするために開発されたものである。

Antはタスクと呼ばれる何種類ものXML要素をビルドファイル (デフォルトではbuild.xml) 上に記述してビルドのルールを作る。このタスクは、Antのプラグインとして提供されているものを外部から採り入れることで、追加することもできる。また、このタスクをAntのアプリケーションプログラミングインタフェース (API) に従ってJavaで記述することにより、自作することもできる。

またでは、Javaのみならず、IKVM.NETプロジェクトによりAnt task for IKVMCとしてMono/.NET Frameworkでの利用も促進されている。

主なAntタスク 
 javac  Javaソースコードをコンパイルする。
 javadoc  JavaソースコードからJavadocドキュメント（Java APIドキュメント）を生成する。
 java  Javaプログラムを実行する。
 junit  テストフレームワークJUnitを使ってJavaプログラムをテストする。
 junitreport  junitタスクで出力した結果ファイルを用いてHTMLフォーマットなどに対応したレポートを生成する。
 copy  ファイルをコピーする。
 delete  ディレクトリやファイルなどを削除する。
 mkdir  ディレクトリを作成する。
 ftp  FTP接続を開始して、ファイルのアップロード、ダウンロードなどを可能にする。
 scp  SCP、SFTP接続を開始して、ファイルのアップロード、ダウンロードなどを可能にする。
 cvs  CVS接続を開始して、CVSリポジトリからのチェックアウト、コミット、アップデートを可能にする。
 genkey  署名つきJARファイルを作成するために必要な証明書を生成する。
 signjar  JARファイルに署名する。
 native2ascii  Javaソースコードなどに含まれるマルチバイト文字の文字列部分をJDKに付属している変換ツールを使ってASCIIコードに変換する。
 setproxy  ネットワークに接続するタスクを実行する際に、プロキシサーバのアドレスを設定する。
 tstamp  タイムスタンプを更新しAntで使われている変数 DSTAMP、TSTAMP を更新する。
 zip  指定したディレクトリやファイルをZIP形式で圧縮・アーカイブする。
 echo  コンソール（コマンドライン環境）に文字列を出力する。
 splash  実行時に指定した時間だけスプラッシュを表示する。画像を指定することもできる。
 buildnumber  ビルドナンバーを更新する。デフォルトでは同じディレクトリにbuild.numerという名前のファイルが自動生成され、そのファイルにビルドナンバーが記録される。
 ant  別のAntビルドファイルにあるタスクを読み込んで実行する。

脚注

関連項目 

 アジャイルソフトウェア開発
 エクストリーム・プログラミング
 継続的インテグレーション
 Apache Maven

外部リンク 
 Apache Ant
 Apache Ant
 NAnt - Apache Antの.NET Frameworkへの移植版

Ant
Java開発ツール
オープンソースソフトウェア
ビルド自動化