Ant は、XML のフォーマットで作成されたスクリプトを実行できる、シンプルなオープン・ソースのスクリプト・エンジンです。 Ant は、自動化ビルドによく見られるタスクの実行に理想的です。
プラグイン、フラグメントあるいはフィーチャー build.properties の可変セットは、 Ant の自動化ビルド・スクリプトに使用されます。PDE は、個々のプラグインとフラグメントのビルド・ファイル用の Ant スクリプト、およびフィーチャー JAR ビルド用の 1 つの総合スクリプトを生成します。 また、この「メイン」スクリプトである一括スクリプトは、 個々のスクリプト・ファイルを正しい順序 (プラグインの依存性チェーンで定義されています) で実行します。 各ビルド・ファイルは、同じ名前 (build.xml) を持っており、 対応するプロジェクト内のマニフェスト・ファイルの兄弟として作成されます。
Ant スクリプトは build.properties の置換変数を使用するので、 通常、生成された Ant スクリプトを変更することなく、「そのまま」使用することができます。 Ant スクリプトを変更した場合でも、 コンポーネントを再ビルドする必要が生じるごとに Ant スクリプトを再作成してはいけません。 このような理由から、スクリプト生成と実行は個別にコントロールすることができます。
スクリプトの作成は、フィーチャー・マニフェスト内のボタン「パッケージ ...」を押すだけでできます。 マニフェストが開いていない場合は、マニフェスト・ファイルを選択して、ポップアップ・メニューから、 「フィーチャー JAR の作成」を選択することができます (類似のコマンドがプラグインおよびフラグメント・マニフェスト用にあります)。 このコマンドは、以下のように、ビルド・スクリプトを生成し、それを実行する Ant ウィザードを開きます。
標準 Ant ウィザードにより、次の 2 つの方法でカスタマイズが可能です。 実行引き数を提供して、および 1 つ以上のビルド・ターゲットを選択して。
Ant 引き数は、通常デフォルト値をオーバーライドするプロパティー値を提供して、 ビルド処理を制御するために使用されます。引き数は、「-Dproperty=value」を使用して設定されます。 以下のプロパティーが知られています。
bootclasspath - 設定すると、デフォルト・ブート・クラスパスを置換します。 プラットフォーム間プラグインをコンパイルするときに使用されます (たとえば、Linux を使用する Windows の UI プラグインのビルド)。
フィーチャー・ビルド・スクリプトを実行するとき、次のターゲットが、 個々のプラグインあるいはフラグメントを呼び出すために使用されます。 実行するターゲットを指定するために、以下のようなプロパティー・ターゲット を設定する必要があります (たとえば -Dtarget=refresh)。
このシナリオでは、all.* ターゲットの 1 つは、イテレーターとして使用されます。 ここで実行する実際のターゲットが、上記に示したプロパティー・ターゲットを介して指定されます。
次のターゲットは、JAR およびすべてのフィーチャーの子のソースをビルドします。
ターゲット build.update.jar は、フィーチャー JAR を、インストール/更新メカニズムで使用されるフォーマットで生成するために選択できます。 上で説明したプロパティー feature.destination は、JAR を置く場所を定義するために使用でき、 plugin.destination は、プラグインおよびフラグメント用の個々の更新 JAR を置く場所を制御するために使用できます。
ターゲット zip.distribution は、フィーチャーとそのプラグインおよびフラグメントを持つが、ソース・コードを含まない zip ファイルを、SDK 形式の構造で作成します。 ソースは、zip.sources ターゲットで生成することができます。
クリーン・ターゲットを使用して、任意のターゲットを実行することにより生成されるすべてを削除します。 最後に、最新表示ターゲットは、現行プロジェクト内で「最新表示」アクションを行い、 新しく生成されたリソースを「ナビゲーター」あるいは「パッケージ・エクスプローラー」で可視にします。
個々のプラグインとフラグメントのビルド・スクリプトを実行するとき、 zip.plugin という追加のターゲットが使用できます。 そのターゲットは、バイナリーの zip ファイルとプラグインのソース内容を、次の構造で作成します。
id_version/
contents
ここで「id」はプラグイン固有の ID で「version」はプラグイン・バージョンです。 この zip ファイルはを、直接 Eclipse インストール・ディレクトリーに、マニュアル高速展開の書式で zip をはずすことができます。