標準のビルド プロセスを拡張したり変更したりするには、標準のビルド プロセスを複製した「Ant スクリプト」をエクスポートします。この Ant スクリプトに必要な変更を加え、コマンドラインからビルドを実行します。生成された Ant スクリプトを変更しても、Workshop for WebLogic 内のビルド プロセスは変更されません。
Ant ビルド スクリプトの機能
Workshop for WebLogic では、以下の種類の Ant ビルド スクリプトが生成されます。
- Web プロジェクト (動的 Web プロジェクト用に生成)
- EAR プロジェクト (エンタープライズ アプリケーション プロジェクト用に生成)
- ユーティリティ プロジェクト (ユーティリティ プロジェクト用に生成)
- EJB プロジェクト (WebLogic EJB プロジェクト用に生成)
エクスポートされた Ant スクリプトには、モジュール アーカイブをビルド、アセンブル、ステージング、および生成するための一連の標準対象が含まれます。特定のスクリプトでサポートされる対象を表示するには、コマンド ant -projecthelp を実行します。次の表に、これらの対象の機能をまとめます。
サポートされる Ant ターゲット
![](../images/callout_top_left.gif) |
![](../images/sp.gif) |
![](../images/callout_top_right.gif) |
![](../images/sp.gif) |
対象 | 依存関係 | 詳細 |
build |
|
ソース ファイルをコンパイルする。結果はパッケージ化されない。EAR プロジェクトの Ant スクリプト内の build 対象によって、すべての子モジュール プロジェクトが依存関係順にビルドされる。 |
assemble |
build (「build」には正式な依存関係は存在しないが、その対象は asssemble より前に呼び出す必要がある) |
反復的開発用にプロジェクトをアセンブルする。「ear.root」プロパティを指定する必要がある。EAR プロジェクトの Ant スクリプト内の assemble 対象によって、すべての子モジュール プロジェクトがアセンブルされる。
|
stage |
build (「build」には正式な依存関係は存在しないが、その対象は stage より前に呼び出す必要がある) |
プロジェクトのすべてのリソースをコピーし、アーティファクトをビルドして、アーカイブを作成できる状態にする。ステージングのディレクトリは、「staging.dir」プロパティを使用してオーバーライドできる。EAR プロジェクトの Ant スクリプト内の stage 対象によって、すべての子モジュール プロジェクトがステージングされる。
|
archive |
stage |
すべてのプロジェクトのリソースおよびビルド アーティファクトを含むアーカイブを作成する。アーカイブの名前と場所は、「archive.path」プロパティを使用してオーバーライドできる。archive 対象を EAR スクリプトから実行すると EAR ファイルがビルドされ、Web プロジェクトから生成された Ant スクリプトから実行すると WAR ファイルが生成される。
|
clean |
|
build 対象によって生成されたファイルおよびディレクトリを削除する。 |
|
![](../images/sp.gif) |
![](../images/callout_bottom_left.gif) |
![](../images/sp.gif) |
![](../images/callout_bottom_right.gif) |
Ant ビルド スクリプトの生成
プロジェクトの Ant ビルド スクリプトをエクスポートするには
- [パッケージ・エクスプローラ] ビューでプロジェクト名を右クリックし、コンテキスト メニューから [エクスポート] を選択します。[選択] ダイアログが表示されます。
- [Workshop Ant Script] を選択します。[次へ] をクリックします。
- [Ant スクリプト生成] ペインで、生成する Ant スクリプトの種類を選択します。
- Web プロジェクトの場合は [Web プロジェクト ビルド スクリプト (WebLogic Server)] を選択します。
- EAR プロジェクトの場合は [Ear プロジェクト ビルド スクリプト (WebLogic Server)] を選択します。
- ユーティリティ プロジェクトの場合は [ユーティリティ プロジェクト ビルド スクリプト (WebLogic Server)] を選択します。
- WebLogic EJB プロジェクトの場合は [EJB プロジェクト ビルド スクリプト (WebLogic Server)] を選択します。
- これら以外のプロジェクト タイプ (WTP EJB、コネクタ、アプリケーション クライアント、Java など) の場合は、[Java プロジェクト ビルド スクリプト] しか選択できません。このビルド スクリプトは、最低限の機能 (基本の build 対象と clean 対象のみ) を提供するもので、完全な EAR ビルドのコンテキスト内で直接使用することはできません。これらのプロジェクトの場合は、ユーティリティ プロジェクト用に作成したビルド スクリプトをカスタマイズするほうが簡単な場合があります。
- [ファイル名] ボックスに、Ant スクリプトのパスとファイル名を指定します。[完了] をクリックします。
アプリケーションの Ant ビルド スクリプトをエクスポートするには
アプリケーション全体の Ant スクリプトを生成するには、各プロジェクト名を右クリックして、メンバー プロジェクト (Web プロジェクト、ユーティリティ プロジェクト、および EJB プロジェクト) ごとに個別に Ant スクリプトを生成します。次に、EAR プロジェクトを右クリックして Ant スクリプトを生成します。
ワークスペース メタデータ ファイルを生成するには
ワークスペースにアクセスできないリモート マシンで Ant スクリプトを実行する場合は、まずワークスペース メタデータ ファイルを生成する必要があります。
- [ファイル|エクスポート] を選択して [選択] ダイアログを表示します。
- [Workspace Metadata for Workshop Ant Scripts] を選択します。[次へ] をクリックします。
- [プロジェクトの選択] ダイアログで以下のように設定します。
- [プロジェクト] ペインで、ワークスペース メタデータ ファイルの作成時に使用するプロジェクトを選択します。
- [エクスポート先] ボックスで、ワークスペース メタデータ ファイルの格納場所と名前を指定します。
[次へ] をクリックして続行します。
- 最後の画面には、wl.home と workspace.dir があらかじめ設定されています。この画面の目的は、メタデータ ファイルに書き込まれる絶対パスを相対パス化するための変数を定義することです。下側のボックスには、残っている絶対パスが表示されます。新たに定義した変数の絶対パス部分がこれらのいずれかに一致すると、その絶対パスがボックスから削除されます。ここで定義したすべての変数は、実行時に -D 構文を使用して Ant スクリプトに渡す必要があります。[完了] をクリックします。
注意事項と実装に関するメモ
- Eclipse ワーキング セットはサポートされません。
- Ant スクリプトをエクスポートする前に、プロジェクトを開いておく必要があります ([プロジェクト|プロジェクトを開く])。閉じられているプロジェクトの Ant スクリプトはエクスポートできません。
- プロジェクトで有効になっているファセットに変更を加えた場合は、プロジェクトの Ant スクリプトを再生成する必要があります。
- プロジェクト メタデータ (Java ビルド パスなど) を変更した場合や、ワークスペース構造に変更を加えた場合 (プロジェクトの新規作成や削除、プロジェクト間の依存関係の変更など) は、ワークスペース メタデータ ファイルを再生成する必要があります。
Ant ビルド スクリプトの実行
Ant スクリプトを実行してプロジェクトをビルドするには
- プロジェクトの Ant スクリプトを生成します。
- wl.home/common/bin/commEnv.cmd (Linux の場合は wl.home/common/bin/commEnv.sh) を実行してシェルの実行環境をコンフィグレーションします。
あらかじめ commEnv.cmd (Linux の場合は commEnv.sh) を実行せずに Ant スクリプトを使用することは、現時点ではサポートされていません。
- Eclipse プロジェクト ディレクトリを変更します。
- 次の例に従って、必要な Ant ターゲットを実行します (例では、プロジェクト アーカイブを作成しています)。
ant build archive -Dworkspace=workspacepath
各パラメータには以下を指定します。
workspacepath には、ワークスペース フォルダの絶対パス (Windows であれば、たとえば C:/MyWork/Workspaces/MyApp) を指定するか、ワークスペース メタデータ ファイルの絶対パスとファイル名を指定します。
パス名にスペースが含まれている場合は、次の例のようにパス名を二重引用符で囲む必要があります。
ant build -Dworkspace="C:\Documents and Settings\MyWorkspace"
Ant スクリプトを使用して EAR ファイルをビルドするには
- EAR 内のプロジェクトごとに Ant スクリプトを生成します。
- EAR プロジェクトの Ant スクリプトを生成します。
- wl.home/common/bin/commEnv.* を実行してシェルの実行環境をコンフィグレーションします。
- EAR プロジェクトの Eclipse ディレクトリを変更します。
- 次の例に従って、EAR プロジェクトの Ant スクリプト内の必要な対象を実行します。
ant build archive -Dworkspace=workspacepath
Ant スクリプトをリモート マシンで実行するには
- すでに説明した手順に従って、ワークスペース メタデータ ファイルを生成します。
- 必要なプロジェクト Ant ビルド スクリプトを生成します。
- 以下のファイルをリモート マシンにコピーします。
- Ant スクリプト
- ワークスペース メタデータ ファイル
- プロジェクトや EAR ファイルに含まれるすべてのファイル (ただし、build ディレクトリのコンテンツを除く)
- すでに説明したプロジェクトまたは EAR のビルド手順に従います。ただし、-Dworkspace= 引数には、ワークスペース ディレクトリの場所ではなく、ワークスペース メタデータ ファイルの場所を指定します。
注意事項と実装に関するメモ
- ワークスペース メタデータは、実行のたびに Workshop Ant スクリプトによってインポートされます。エクスポートされたワークスペース メタデータ ファイルを使用しない限り、ワークスペース メタデータへの変更 (たとえば、プロジェクトのクラスパスの変更) は、スクリプトを再生成しなくても必ず反映されます。インポートされたワークスペース メタデータの状態は、Ant の実行時にコマンドラインで -Decho.metadata=true を指定すると表示されます。
- 生成された Ant スクリプトは、コマンドラインからのビルドに使用するためのものです。Workshop for WebLogic 内からのビルドには使用できません。Workshop for WebLogic と Ant スクリプトの同時使用はサポートされておらず、ビルド エラーの原因になるおそれがあります。衝突を回避するため、Workshop for WebLogic を起動する前に、Ant スクリプトによるビルドからの出力を削除しておく必要があります。