Apache Antタスクの概要

Antで利用可能なタスクは数が多いため、各タスクが何をするのか全体像を把握するのが難しい場合があります。以下の表では、各タスクの簡単な説明と、完全なドキュメントへのリンクを提供します。

アーカイブタスク
監査/カバレッジタスク
コンパイルタスク
デプロイメントタスク
ドキュメンテーションタスク
EJBタスク
実行タスク
ファイルタスク
Java拡張タスク
ログタスク
メールタスク
その他のタスク
プリプロセスタスク
プロパティタスク
リモートタスク
SCMタスク
テストタスク
アーカイブタスク 🔝
タスク名 説明
GUnzip/BUnzip2/UnXZ

GZip、BZip2、またはXZを使用して圧縮されたファイルを展開します。

GZip/BZip2/XZ

GZip、BZip2、またはXZアルゴリズムを使用してファイルを圧縮します。このタスクは依存関係のチェックを行いません。出力ファイルは常に生成されます。

Cab

Microsoft CABアーカイブファイルを作成します。 Jar タスクまたは Zip タスクと同様に呼び出されます。このタスクは、実行パスに配置する必要がある外部cabarcツール(Microsoftが提供)を使用してWindowsで動作します。

Ear

エンタープライズアプリケーションアーカイブに含める必要があるファイルを特別に処理する Jar タスクの拡張です。

Jar

ファイルのセットをjar形式にします。

Jlink

非推奨。代わりに、Jar または Zip タスクのzipfilesetおよびzipgroupfileset属性を使用してください。

Manifest

マニフェストファイルを作成します。

Rpm

rpm 実行可能ファイルを呼び出して、Linuxインストールファイルを作成します。現在、このタスクはRPMをサポートするLinuxまたはその他のUnixプラットフォームでのみ動作します。

SignJar

javasignコマンドラインツールを使用してjarまたはzipファイルに署名します。

Tar

tarアーカイブを作成します。

Unjar

jarファイルを解凍します。

Untar

tarファイルを解凍します。

Unwar

warファイルを解凍します。

Unzip

zipファイルを解凍します。

War

WebアプリケーションアーカイブのWEB-INF/libWEB-INF/classes、またはWEB-INFディレクトリに含める必要があるファイルを特別に処理する Jar タスクの拡張です。

Zip

zipファイルを作成します。

監査/カバレッジタスク 🔝
タスク名 説明
JDepend

JDependパーサーを呼び出します。このパーサーは、「Javaソースファイルディレクトリのセットを走査し、各Javaパッケージのデザイン品質メトリクスを生成します」。

コンパイルタスク 🔝
タスク名 説明
Depend

ソースに対してどのクラスファイルが古くなっているかを判断し、古くなったクラスに依存する他のクラスのクラスファイルを削除して、削除されたクラスファイルの再コンパイルを強制します。通常は、Javacタスクと組み合わせて使用します。

Javac

実行中の(Ant)JVM内、またはfork属性が指定されている場合は別のJVM内で、指定されたソースファイルをコンパイルします。

JspC

JSPコンパイラを実行します。JSPページの最初の呼び出しを高速化するため、JDKが完全にインストールされていないサーバーへのデプロイメント、または単にデプロイせずにページを構文チェックするために、JSPページをプリコンパイルするために使用できます。Javacタスクを使用して、生成されたJavaソースをコンパイルできます。(WebLogic JSPコンパイラについては、Wljspcタスクを参照してください。)

NetRexxC

実行中の(Ant)JVM内でNetRexxソースツリーをコンパイルします。

Rmic

指定されたファイルに対してrmicコンパイラを実行します。

Wljspc

WebLogic JSPコンパイラweblogic.jspcを使用してJSPページをコンパイルします。(WebLogic以外のJSPコンパイラについては、JspCタスクを参照してください。)

デプロイメントタスク 🔝
タスク名 説明
ServerDeploy

ベンダー固有のJ2EEサーバー用の「ホット」デプロイメントツールを実行します。

ドキュメンテーションタスク 🔝
タスク名 説明
Javadoc

javadocツールを使用してコードドキュメントを生成します。Javadoc2タスクは非推奨です。代わりにJavadocタスクを使用してください。

EJBタスク 🔝
タスク名 説明
EJBタスク

(EJBタスクを説明するドキュメントを参照してください。)

実行タスク 🔝
タスク名 説明
Ant

指定されたビルドファイルでAntを実行し、オプションで(場合によっては新しい値を持つ)プロパティを渡します。このタスクを使用して、サブプロジェクトを構築できます。

AntCall

同じビルドファイル内の別のターゲットを実行し、オプションで(場合によっては新しい値を持つ)プロパティを渡します。

Apply/ExecOn

システムコマンドを実行します。os属性が指定されている場合、Antが指定されたオペレーティングシステムのいずれかで実行されている場合にのみコマンドが実行されます。

Dependset

ソースファイルのセットとターゲットファイルのセットを比較します。ソースファイルのいずれかがターゲットファイルのいずれよりも新しい場合、すべてのターゲットファイルが削除されます。

Exec

システムコマンドを実行します。os属性が指定されている場合、Antが指定されたオペレーティングシステムのいずれかで実行されている場合にのみコマンドが実行されます。

Java

実行中の(Ant)JVM内、またはfork属性が指定されている場合は別のJVM内で、Javaクラスを実行します。

Parallel

他のAntタスクを含めることができるコンテナタスクです。 <parallel>タグ内で指定された各ネストされたタスクは、独自のスレッドで実行されます。

Sequential

他のAntタスクを含めることができるコンテナタスクです。ネストされたタスクは単に順番に実行されます。その主な用途は、<parallel>タグ内のタスクのサブセットの順次実行をサポートすることです。

Sleep

指定された期間、実行を中断します。ビルドまたはデプロイメントプロセスでタスク間に間隔が必要な場合に便利です。

Subant

定義されたすべてのサブビルドに対して、指定されたターゲットを呼び出します。これは、一括プロジェクト実行のためのantの拡張機能です。

Waitfor

指定された一連の条件がtrueになるまで実行をブロックします。このタスクは、Parallelタスクと組み合わせて、一連のプロセスを同期するために使用することを目的としています。

ファイルタスク 🔝
タスク名 説明
Attrib

ファイルまたは指定されたディレクトリ内のすべてのファイルのアクセス許可や属性を変更します。現在、Windowsでのみ有効です。

Checksum

ファイルまたはファイルのセットのチェックサムを生成します。このタスクを使用して、チェックサムの検証を実行することもできます。

Chgrp

ファイルまたは指定されたディレクトリ内のすべてのファイルのグループ所有権を変更します。現在、Unixでのみ有効です。

Chmod

ファイルまたは指定されたディレクトリ内のすべてのファイルのアクセス許可を変更します。現在、Unixでのみ有効です。アクセス許可は、chmodコマンドの引数のように、UNIXスタイルでもあります。

Chown

ファイルまたは指定されたディレクトリ内のすべてのファイルの所有者を変更します。現在、Unixでのみ有効です。

Concat

複数のファイルを1つのファイルに連結するか、Antのロギングシステムに連結します。

Copy

ファイルまたはファイルセットを新しいファイルまたはディレクトリにコピーします。

Copydir

非推奨。代わりにCopyタスクを使用してください。

Copyfile

非推奨。代わりにCopyタスクを使用してください。

Delete

単一のファイル、指定されたディレクトリ内のすべてのファイルとサブディレクトリ、または1つ以上のFileSetによって指定されたファイルのセットのいずれかを削除します。

Deltree

非推奨。代わりにDeleteタスクを使用してください。

Filter

このプロジェクトのトークンフィルターを設定するか、指定されたファイルから複数のトークンフィルターを読み取り、これらをフィルターとして設定します。トークンフィルターは、ファイルコピー操作を実行するすべてのタスクで使用されます。

FixCRLF

タブ、キャリッジリターン、ラインフィード、EOF文字を追加または削除するようにファイルを変更します。

Get

URLからファイルを取得します。

Mkdir

ディレクトリを作成します。必要に応じて、存在しない親ディレクトリが作成されます。

Move

ファイルを新しいファイルまたはディレクトリに移動するか、ファイルのセットを新しいディレクトリに移動します。

Patch

diffファイルをオリジナルに適用します。

Rename

非推奨。代わりにMoveタスクを使用してください。

RenameExtensions

非推奨。代わりにグロブマッパーを指定したMoveタスクを使用してください。

Replace

ファイルまたはファイルのセットで、特定の文字列の出現を別の文字列に置き換えます。

ReplaceRegExp

ファイルまたはファイルのセットで、特定の正規表現の出現を置換パターンに置き換えます。

SetPermissions

リソースのコレクションのアクセス許可を変更します。

Sync

2つのディレクトリツリーを同期します。

Tempfile

新しい一時ファイルの名前を生成し、指定されたプロパティをその名前に設定します。

Touch

ファイルの変更時刻を変更し、場合によっては同時に作成します。

Java拡張タスク 🔝
タスク名 説明
Jarlib-available

拡張機能がFileSetまたはExtensionSetに存在するかどうかを確認します。拡張機能が存在する場合、指定されたプロパティが設定されます。

Jarlib-display

指定されたjarに含まれているオプションパッケージおよびパッケージ仕様情報を表示します。

Jarlib-manifest

マニフェスト内のすべての依存関係を宣言するマニフェストを生成します。依存関係は、指定されたパスを調べ、jarのマニフェストでExtension/オプションパッケージ仕様を検索することによって決定されます。

Jarlib-resolve

拡張機能を満たすjarを特定しようとし、jarの場所を指定されたプロパティに配置します。

ログタスク 🔝
タスク名 説明
Record

ビルドプロセスイベントのログ出力をファイルに記録するリスナーを実行します。複数のレコーダーを同時に存在させることができます。各レコーダーはファイルに関連付けられています。

メールタスク 🔝
タスク名 説明
Mail

SMTPメールを送信します。

MimeMail

非推奨。代わりにMailタスクを使用してください。

その他のタスク 🔝
タスク名 説明
Defaultexcludes

ビルドファイル内からデフォルトの除外パターンのリストを変更します。

Echo

テキストをSystem.outまたはファイルに出力します。

Fail

オプションで追加情報を出力しながら、BuildExceptionをスローして現在のビルドを終了します。

GenKey

キーストアにキーを生成します。

HostInfo

指定されたホスト、またはプロセスが実行されているホストに関連するプロパティを設定します。

Input

メッセージを表示し、コンソールから入力を1行読み取ることで、ビルドプロセス中のユーザーインタラクションを可能にします。

Script

Apache BSF がサポートする言語でスクリプトを実行します。

Sound

ビルドの成否に応じて、ビルド終了時にサウンドファイルを再生します。

Splash

スプラッシュスクリーンを表示します。

Sql

JDBCを介して一連のSQLステートメントをデータベースに実行します。ステートメントは、src属性を使用してテキストファイルから読み込むか、SQLタグで囲まれた部分から読み込むことができます。

Taskdef

現在のプロジェクトにタスク定義を追加します。これにより、この新しいタスクを現在のプロジェクトで使用できるようになります。

TStamp

現在の日時に基づいて、現在のプロジェクトにDSTAMPTSTAMP、およびTODAYプロパティを設定します。

Typedef

現在のプロジェクトにデータ型定義を追加します。これにより、この新しい型を現在のプロジェクトで使用できるようになります。

XmlValidate

XMLファイルが有効(または整形式のみ)であることを確認します。このタスクは、デフォルトでAntが現在使用しているXMLパーサーを使用しますが、必要に応じて任意のSAX1/2パーサーを指定できます。

前処理タスク 🔝
タスク名 説明
ANTLR

文法ファイルに対してANTLRトランスレータジェネレータを起動します。

AntStructure

Antに現在認識されているすべてのタスクに関する情報を含むAntビルドファイル用のDTDを生成します。

Import

別のビルドファイルをインポートし、必要に応じて、その中のターゲットを自身のターゲットで上書きします。

Include

別のビルドファイルを含めます。

JavaCC

文法ファイルに対してJavaCCコンパイラコンパイラを起動します。

Javah

JavaクラスからJNIヘッダーを生成します。

JJDoc

JavaCCコンパイラコンパイラ用のJJDocドキュメントジェネレータを起動します。JJDocは、JavaCCパーサ仕様を受け取り、BNF文法のドキュメントを生成します。コマンドラインオプションによって決定される3つのモードで動作できます。このタスクは、文法ファイルが生成されたBNF文法ドキュメントよりも新しい場合にのみJJDocを起動します。

JJTree

JavaCCコンパイラコンパイラ用のJJTreeプリプロセッサを起動します。これにより、生成するJavaCCソースのさまざまな場所に構文木構築アクションが挿入されます。JJTreeの出力はJavaCCを通して実行され、パーサーが作成されます。このタスクは、文法ファイルが生成されたJavaCCファイルよりも新しい場合にのみJJTreeを起動します。

Macrodef

他のタスクの上に構築されたマクロとして新しいタスクを定義します。

Native2Ascii

ネイティブエンコーディングのファイルを、エスケープされたUnicodeを使用してASCIIに変換します。一般的な使用法は、ネイティブオペレーティングシステムのエンコーディングで保持されているソースファイルを、コンパイル前にASCIIに変換することです。

Presetdef

属性または子要素のデフォルト値を使用して既存のタスクをインストルメント化することにより、新しいタスクを定義します。

Translate

特別なトークンで区切られたファイル内のキーを識別し、リソースバンドルから読み取った値でそれらを変換します。

XSLT

XSLTを介して一連のドキュメントを処理します。

プロパティタスク 🔝
タスク名 説明
Available

指定されたファイル、ディレクトリ、クラスパス内のクラス、またはJVMシステムリソースが実行時に利用可能な場合に、プロパティを設定します。

Basename

指定されたパスの最後の要素にプロパティを設定します。

BuildNumber

ビルド番号の追跡を支援します。

Condition

特定の条件が真である場合にプロパティを設定します。これは、AvailableおよびUptodateの一般化です。

Dirname

指定されたファイルの最後のパス要素を含まない値にプロパティを設定します。

Echoproperties

現在のプロパティを一覧表示します。

LoadFile

ファイルをプロパティにロードします。

LoadProperties

ファイルの内容をAntプロパティとしてロードします。このタスクは、ネストされた<filterchain>要素をサポートしている点、およびターゲット外で指定できない点を除いて、<property file="..."/>を使用するのと同じです。

MakeURL

ファイル/ファイルセットまたはパスからURL(リスト)を作成します。

PathConvert

ネストされたパス、パス参照、ファイルリスト参照、またはファイルセット参照を、指定されたプラットフォームで使用可能な形式に変換し、指定された区切り文字で区切られた項目のリストに変換し、結果を指定されたプロパティに格納します。

Property

プロジェクトにプロパティ(名前と値による)、またはプロパティのセット(ファイルまたはリソースから)を設定します。

PropertyFile

プロパティファイルを作成または変更します。アプリケーションサーバーおよびアプリケーションの構成ファイルに対して、無人での変更を実行したい場合に便利です。通常、ビルド番号の自動生成やビルドプロパティファイルへの保存、または日付操作などのために使用されます。

Uptodate

指定されたターゲットファイルがソースファイルのセットよりも新しい場合に、プロパティを設定します。

Whichresource

クラスまたはリソースを検索します。

XmlProperty

整形式のXMLファイルからプロパティ値をロードします。

リモートタスク 🔝
タスク名 説明
FTP

ファイルの送信、受信、リスト、削除、およびディレクトリの作成が可能な基本的なFTPクライアントを実装します。

Rexec

rexecセッションを自動化します。

Scp

SSHを使用して、リモートサーバーとの間でファイルをコピーします。

setproxy

JavaのHTTPプロキシプロパティを設定します。これにより、同じJVMで実行されるタスクとコードは、ファイアウォールを介してリモートWebサイトにアクセスできるようになります。

Sshexec

SSHを使用して、リモートサーバーでコマンドを実行します。

Telnet

telnetセッションを自動化します。このタスクでは、ネストされた<read>タグと<write>タグを使用して、待機する文字列と送信するテキストを指定します。

SCMタスク 🔝
タスク名 説明
Cvs

CVSリポジトリから取得したパッケージ/モジュールを処理します。

CvsChangeLog

CVSリポジトリに記録された変更のXMLレポートを生成します。

CVSPass

.cvspassファイルにエントリを追加します。このファイルにエントリを追加することは、cvs loginコマンドと同じ効果があります。

CvsTagDiff

CVSリポジトリに記録された2つのタグまたは日付間の変更のXML形式のレポートファイルを生成します。

ClearCase

ClearCaseのcleartool checkincheckoutuncheckoutupdatelockunlockmklbtypermtypemklabelmkattrmkdirmkelem、およびmkblコマンドを実行するタスク。

Continuus/Synergy

Continuusのccm checkincheckoutreconfigureccmcheckintask、およびccmcreatetaskコマンドを実行するタスク。

Microsoft Visual SourceSafe

Visual SourceSafeのss getlabelhistorycheckincheckoutaddcp、およびcreateコマンドを実行するタスク。

Pvcs

ユーザーがPVCSリポジトリからソースコードの最新版を抽出できるようにします。

SourceOffSite

SourceOffSiteのsos getlabelcheckin、およびcheckoutコマンドを実行するタスク。

テストタスク 🔝
タスク名 説明
Junit

Junitテストフレームワークからテストを実行します。このタスクはJUnit 3.0以降でテスト済みです。JUnit 3.0より前のバージョンでは動作しません。

JunitReport

Junitタスクによって生成された個々のXMLファイルをマージし、結果として得られるマージされたドキュメントにスタイルシートを適用して、テストケースの結果の閲覧可能なレポートを提供します。