カスタム Ant タスクの作成

構築スクリプトで使用するための Ant タスクを作成できます。簡単な方法としては、まず、IDE 提供の「カスタムタスク」テンプレートを使用します。IDE では、Ant API のためのコード補完機能を利用できます (Ant API 用 Javadoc ドキュメントが「Javadoc」タブにマウントされています)。

テンプレートを使用する手順は以下のとおりです。

  1. 「新規」 「Ant プロジェクト」を選択します。
  2. 「カスタムタスク」を選択します。「次」をクリックして次に進みます。
  3. 「名前」と「パッケージ」のテキストフィールドに、クラスの名前とパッケージを入力します。
  4. 「完了」をクリックします。
ソースエディタが開き、カスタムタスクを定義するためのテンプレートが表示されます。

Ant モジュールでは次の 2 種類の方法をサポートしています。 明示的なクラスパスを使用する方法と使用しない方法です。

明示的なクラスパスを使用する方法

明示的なクラスパスを使用する方法を推奨します。タスクを書き込んだ後、たとえばタスクのコンパイル方法 (およびタスクの JAR ファイルの生成方法) を構築ファイルに組み込みます。これらのタスクを使用するには、クラスパスが含まれている長い形式の taskdef を組み込みます。簡単なタスクの を示します。

この方法の利点は、とくに準備作業をしなくともスクリプトを使い始められることであり、必要なものはすべて用意されています。IDE の中でタスクを作成することもできます。スクリプトがタスクを自動的にコンパイルしてくれます。

自動クラスパスを使用する方法

スクリプトに基づき、カスタムタスクが特定の場所に保存されることはありません。classpath 属性が taskdef に含まれていません。コマンド行で Ant を起動する前にクラスパスにタスクを追加する必要があります。

IDE 内のクラスパスにタスクを指定して IDE を起動する方法があります。ただし、さらに良い方法は、タスクのソースコードが入っているファイルシステムを IDE の「ファイルシステム」タブにマウントすることです。IDE を使用して対話形式でタスクを作成しコンパイルすることができます。Ant スクリプトが実行されるたび、Ant スクリプトはファイルシステム内でタスク定義を自動的に検索します。このためには、次のサブ要素を taskdef に追加する必要があります。

<classpath>
    <pathelement path="${netbeans.library.path}"/>
    <pathelement path="${netbeans.filesystems.path}"/>
</classpath>
プロパティは IDE によって IDE 専用ライブラリ (Ant、パーサなど) を含んでいるクラスパスにまず展開され、次にマウントされているファイルシステムすべてに展開されます。

オプションのタスク

Ant 統合モジュールには、Ant の optional.jar ファイルが組み込まれています。Ant に添付されていない (かつ通常は IDE にも添付されていない) 特殊なライブラリを必要とするため、これらのタスクの大半はオプションです。これらのタスクを使用する場合は、必要なライブラリをダウンロードし、JAR ファイルを IDE の lib/ext/ ディレクトリに入れます。

暗黙のタスク

タスクを暗黙に定義する方法は、このモジュールではサポートされていません。Ant により、デフォルトタスク定義を特殊ファイルに追加して、ユーザが使用するスクリプトがタスク定義を自動的に取得できるという機能です。この機能は、今後 Ant モジュールでサポートされる可能性があります。

カスタムタスクとエクスプローラビュー

カスタムタスクを定義してこれらのカスタムタスクを使用するプロジェクトを 1 回以上実行すると、Ant モジュールはカスタムタスクの XML 構造を認識するので、標準のタスクとまったく同じようにこれらのカスタムタスクをエクスプローラで編集できます。カスタムデータ型の場合も同様です。

Ant タスクの詳しい作成方法については、Ant 1.3 Manual の「Using Ant」を参照してください。

関連項目
Ant 設定値の設定
Ant プロジェクトの作成と実行

著作権と商標について