|
ツールガイド 05/22/03 08:41:32 |
Novell exteNd Workbenchを使用すると、J2EEコンポーネント(EJB JAR、JSPページ、サーブレット、およびJavaクラスファイルを含む)を作成して、適切な構造のJ2EEアーカイブを作成できます。Workbenchの作業によって「プロジェクト」が構成されます。
プロジェクトの作業には、ソース(Javaおよびデータファイル)の編集、クラスの構築、アーカイブの生成、およびアーカイブの配備が含まれます。この章では、プロジェクトでJ2EEコンポーネントおよびアーカイブを作成および管理する方法について説明します。この章は、次の節で構成されています。
「プロジェクト」は、Workbenchで作業してJ2EEモジュールを作成するソースファイルの集合です。また、プロジェクトは、部分が集まってアーカイブが作成される方法を定義する一連の規則であるとも言えます。
「アーカイブ」は、完成したプロジェクトから生成されます。Workbenchプロジェクトは、次のタイプのアーカイブを表すことができます。
Workbenchを使用して作成できるのは、J2EEプロジェクトおよびアーカイブだけではありません。Workbenchを使用すると、アーカイブでないプロジェクト(単に他のファイルを作成するプロジェクト)、およびユーティリティプロジェクト(ZIPまたはJARファイルに保存されるクラスファイルなど)を開発および作成できます。
プロジェクトに含まれるもの プロジェクトには、次の項目が含まれます。
プロジェクトファイル 各プロジェクトおよびサブプロジェクトには、それを定義する「プロジェクトファイル」(SPFファイル)があります。Workbenchによってプロジェクトファイルが自動的に作成され、Workbenchで指定した設定が保存されます。プロジェクトファイルによって、プロジェクトによるサブプロジェクトの参照方法、ディスク上のファイルの保存場所、および生成されるアーカイブでのファイルの構成方法が定義され、クラスパスエントリおよび配備設定が保存されます。プロジェクトの変更内容は、プロジェクトファイルに自動的に反映および保存されます。サブプロジェクトのコンポーネントを追加または移動する場合は、サブプロジェクトのプロジェクトファイルに更新されます。
注意: プロジェクトファイルを直接編集する必要はありません。設定はすべて、Workbench内で定義できます。手動でファイルを不正確に変更すると、そのファイルに関連付けられているプロジェクトがWorkbenchで開けなくなる場合があります。
プロジェクトを作成する際には、プロジェクトに含ませるファイルシステムのディレクトリ(またはファイル)、およびプロジェクトによって作成されるJavaアーカイブの保存場所を指定する必要があります。
また、プロジェクト内でのサブプロジェクトの構成方法も指定する必要があります。たとえば、トップレベルのEARプロジェクトには、アプリケーションのユーザインタフェース、ビジネス論理、データベースアクセスなどを定義するWARおよびEJB JARなどの、さまざまなサブプロジェクトモジュールが含まれます。
J2EEおよびWebサービスアプリケーションには考慮すべきプロジェクト設計の問題が多数あり、きわめて複雑になる場合があります。設計の決定内容は、アプリケーションを構成するWorkbenchのプロジェクト、サブプロジェクト、およびコンポーネントの作成方法に影響を与えます。
J2EEおよびWebサービスアプリケーションの設計における考慮事項の詳細については、『開発ガイド』にある
アプリケーションの配備に関する章を参照してください。
Workbenchでは、ボトムアップ(コンポーネントを最初に作成してからWorkbenchプロジェクトおよびサブプロジェクトを作成)およびトップダウン(プロジェクトおよびサブプロジェクトを作成してからコンポーネントを作成)を含む、プロジェクトおよびコンポーネントを作成するほとんどすべてのメソッドがサポートされます。ほとんどの場合では、トップダウンの方法に従って、最初にプロジェクトおよびサブプロジェクトの構造を作成してから新しいコンポーネントを作成し、(他の既存のコンポーネントとともに)プロジェクトに追加します。
まったく新しいプロジェクトを作成する場合の詳細については、
プロジェクトおよびサブプロジェクトの作成を参照してください。既存のソースファイルおよびコンポーネントを含むプロジェクトを作成する場合の詳細については、
既存のソースファイルの使用を参照してください。
Workbenchを使用すると、プロジェクトのソースファイルのディレクトリ構造、およびこれらのソースファイルから作成されたアーカイブを柔軟に定義できます。
ソースファイルのディレクトリ構造 ファイルシステム上にあるソースファイルのディレクトリ構造は、アーカイブにある生成されたファイルのディレクトリ構造に一致する必要はありません。たとえば、異なるソースディレクトリにあるファイルは、アーカイブの同じディレクトリに割り当てることができます。ただし、開発を簡略化するには、プロジェクトディレクトリが、J2EEコンポーネントをアーカイブ内にグループ化するディレクトリツリー構造と同じになるように設定します。
プロジェクト(SPF)ファイルがディレクトリ構造のルートに配置されるようにプロジェクトソースファイルのディレクトリ構造を作成してから、(プロジェクトファイルと同じレベルに)すべてのプロジェクトソースコードを入れるプロジェクトsrcディレクトリを作成します。たとえば、次のようになります。
myWebProject\
myProject.spf
src\
dbAccess\
addItem.java
changeItem.java
deleteItem.java
queryDB.java
loginProcessing\
login.java
user.java
userInterface\
intro.jsp
login.jsp
loginError.jsp
welcome.jsp
複数のサブプロジェクト(JAR、WAR、EJB JARなど)を持つ企業アーカイブ(EAR)プロジェクトを作成する際には、すべてのプロジェクトファイルを同じレベルに置き、各サブプロジェクトのソースを別のsrcサブディレクトリに入れると作業が簡単になります。たとえば、次のようになります。
myWebProject\
myProject.spf
myProjectDB.spf
myProjectLogin.spf
myProjectUI.spf
src\
dbAccess\
addItem.java
changeItem.java
deleteItem.java
queryDB.java
loginProcessing\
login.java
user.java
userInterface\
intro.jsp
login.jsp
loginError.jsp
welcome.jsp
プロジェクトのパッケージ構造が扱いにくい場合、サブプロジェクトコンポーネントは別のサブディレクトリに移動できます。単一のソースツリーまたはソースツリーの組み合わせを使用してWorkbenchプロジェクトを構成できます。
プロジェクトの設定の詳細については、
プロジェクトコンテンツの設定の管理を参照してください。
アーカイブのディレクトリ構造 J2EEアーカイブの内部のディレクトリ構造は、アーカイブタイプによって異なります。アーカイブの各タイプには、特定のDTDに準拠するXML記述子があります。
たとえば、Webアーカイブ(WAR)を作成する場合、URLを通じて直接アクセスできるファイル(JSPページおよびサーブレットなど)、およびアクセスできないファイル(サポートするクラスおよびアーカイブファイルなど)を指定する必要があります。J2EEによって、URLを通じてアクセスできるようにしないファイルを、アーカイブディレクトリ構造内のWEB-INFディレクトリに配置することが指定されます。このWEB-INFディレクトリは、アーカイブのルートディレクトリの下に置かれ、通常次のファイルまたはディレクトリが含まれます。
|
ファイルまたはディレクトリ |
コンテンツ |
|---|---|
|
web.xml |
Webアプリケーションとの通信方法をアプリケーションサーバに伝える必須の配備記述子ファイル |
|
WEB-INF/classes/ |
アプリケーションのコンパイルされたJavaクラスファイルが含まれるディレクトリ |
|
WEB-INF/lib/ |
アプリケーションによって使用されるJARファイルが含まれるディレクトリ |
URLからアクセス可能なJSPページは、通常はアーカイブのルートディレクトリにあります。JSPページ(Strutsによって使用されているものなど)をURLアクセスから隠す必要がある場合があります。WEB-INFディレクトリの下のファイルは、URLアクセス用に設定できますが、デフォルトではURLを通じてアクセスすることはできません。他のファイルには、任意の場所を設定できます。
注意: WEB-INFディレクトリを作成する場合は、ディレクトリ名がすべて大文字のテキストになっていることを確認する必要があります。
詳細について この節では、ソースファイルおよびアーカイブディレクトリ構造の設計時に発生する問題について少しだけ紹介しました。
アーカイブディレクトリ構造の指定およびアーカイブのパッケージ化の詳細については、
Sun J2EE Blueprintsマニュアルを参照してください。
Workbenchでのソースおよびアーカイブディレクトリ構造の指定方法の詳細については、
プロジェクトコンテンツの設定の管理を参照してください。
プロジェクト(またはサブプロジェクト)は、EAR、EJB JAR、WAR、RAR、JAR、配備専用アーカイブ、またはアプリケーションクライアントとして作成できます。プロジェクトを作成する際には、プロジェクト名およびソースファイルの場所を定義します。Workbenchによって、これらのすべてのソースファイルは、アーカイブに定義する名前および場所にマップされます。
説明された例外を除いて、各タイプのプロジェクトに次の手順(New Projectウィザードを使用)が適用されます。
プロジェクト開始前の配備ワークスペース構成の詳細については、
プロジェクトのディレクトリ構造の考慮事項を参照してください。
注記: サブプロジェクトを作成する場合、この操作を開始する前に、Workbenchでペアレントプロジェクトを開く必要があります。
次のような[New Project]ダイアログボックスが表示されます。
構築不可能なアーカイブを作成する場合は、[Deploy-only]を選択します。これらの手順の詳細については、 配備専用プロジェクトの作成を参照してください。
EJB JARとEJBクライアントJARの組を作成する場合は、 両方のプロジェクトを同時に開けるように、最初に両方のペアレントのWARまたはEARを作成します。EJB JARおよびクライアントJARの関係の詳細については、 EJB JARの設定の指定を参照してください。
サードパーティのソースから完成されたアーカイブ(およびソースコード)を含むプロジェクトを作成する場合は、プロジェクトタイプを選択し、 既存のソースファイルの使用の手順に従います。
注記: (WARを作成する)次のNew Projectウィザードのパネルは、各タイプのプロジェクトに適用されます。
|
新しいプロジェクトの設定 |
操作内容 |
|---|---|
|
Project Name |
プロジェクトに使用する名前を指定します(自動的に.SPFの拡張子が付けられます)。この名前は、ソースレイアウトに表示されます。 プロジェクト名を入力すると、自動的にアーカイブ名が入力されます。アーカイブには、同じ名前を使用するか、または別の名前を入力できます。 |
|
Project Location |
プロジェクト(および他のソースファイル)を配置するディレクトリを指定します。Workbenchによって、プロジェクトの場所に(拡張子が.SPFである)プロジェクトファイルが作成されます。 プロジェクトの場所を入力すると、新しいプロジェクトの残りの設定が自動的に入力されます。これらの設定は変更できます。 [Project Location]フィールドの横の省略記号をクリックすると、場所を選択したり、プロジェクトディレクトリを入力したりすることができます。 存在しないプロジェクトの場所のディレクトリを指定すると、ウィザードによって、ディレクトリを作成するように要求されます。 絶対パスを指定しない場合は、ウィザードによってWorkbench binディレクトリの下にプロジェクトが配置されます。 |
|
Archive Name |
生成されるアーカイブファイルの名前を指定します。入力した名前は、アーカイブレイアウトに表示されます。アーカイブタイプに基づく拡張子が、自動的に名前の後ろに付けられます。プロジェクト名と一致するデフォルトのアーカイブ名を使用するか、または新しい名前を入力できます。 既存のアーカイブに基づいてプロジェクトを作成したり、配備専用プロジェクトを作成したりするには、含ませる既存のアーカイブの名前を入力します。
|
|
Archive Location |
プロジェクトアーカイブの場所を入力するか、またはデフォルト(プロジェクトのルートディレクトリ)を使用します。 アーカイブの場所は、プロジェクトが作成された後、ナビゲーションペインのアーカイブレイアウトに表示されます。 |
|
Deployment Descriptor Name |
プロジェクトの場所を入力すると、ウィザードによって(プロジェクトタイプに基づく)配備名が入力されます。各アーカイブによって、独自の配備情報のセットがこのXML配備記述子ファイルのソースファイルに保存されます。プロジェクトを作成してアーカイブすると、Workbenchによって、(アーカイブタイプに基づく)デフォルトの配備記述子名および場所が作成されます。 ほとんどの場合、デフォルトの名前および場所をそのまま使用します。 (Workbenchプロジェクトファイルを作成することによって)既存のアーカイブプロジェクトを変換する場合は、ディスクの配備記述子ファイルの名前を入力します。 同じタイプの複数のJ2EEサブプロジェクトが、同じ配備記述子ディレクトリの場所を共有するようにするには、[Deployment Descriptor Location](次の行)を参照してください。 ここで入力する配備記述子名は「ソース」ファイル名にのみ影響を与えますが、JARで使用されるファイル名には影響しません。Workbenchによってアーカイブが構築される際には、アーカイブタイプのJ2EE仕様で定義された標準の場所が使用され、この配備記述子ファイルがアーカイブに含められます。 |
|
Deployment Descriptor Location |
配備記述子の場所を入力するか、またはデフォルトを使用します。各アーカイブタイプには、必要なデフォルトのJ2EEディレクトリの場所が使用されます。 アーカイブプロジェクトを変換する場合は、アーカイブプロジェクトの配備記述子の場所を入力します。 ほとんどの場合、デフォルトの名前および場所をそのまま使用します。ただし、同じタイプの複数のJ2EEサブプロジェクトが、同じ配備記述子ディレクトリの場所を共有するようにするには、各配備記述子に異なるソースファイル名を入力するか、または各記述子のルートディレクトリの下に個別のディレクトリ構造を作成します。 プロジェクトソースの場所に指定したものと一致する配備記述子を指定する場合(またはWorkbenchによって一致する配備記述子が見つけられた場合)、既存の配備記述子を使用するかどうかを尋ねるメッセージが表示されます。「いいえ」を選択した場合、続行するためには配備記述子名または場所を変更する必要があります。 |
|
Project J2EE Version |
このプロジェクトのJ2EEのバージョンを指定します。
|
。
注記: Javaまたは配備専用アーカイブには必要ではない2つの配備記述子のフィールドおよびJ2EEバージョンを除いて、このウィザードパネルのすべての設定は必須です。
Workbenchに現在開いているプロジェクトがある場合は、新しいプロジェクトを、そのプロジェクトのサブプロジェクトとして追加するか、またはサブプロジェクトのサブプロジェクトとして追加するかをウィザードに尋ねられます。
Workbenchに現在開いているプロジェクトがない場合は、このパネルは表示されません。
このプロジェクトをサブプロジェクトとして作成しない場合は、[Add this project to the current project]をオフにして[Next]をクリックします( Step 6に進むことができます)。
別のプロジェクトのサブプロジェクトとしてプロジェクト作成する
[Add to Project]でペアレントプロジェクトを選択します。このリストには、現在開いているプロジェクトおよびそのプロジェクトに関連付けられているすべてのサブプロジェクトが含まれています。
(生成されたすべてのファイルを追加するのではなく)生成されたこのプロジェクトのアーカイブをペアレントアーカイブに追加するには、[Add the generated archive of the subproject to the parent archive]をオンします。
(生成されたアーカイブの代わりに)生成されたこのプロジェクトのファイルをペアレントアーカイブに追加するには、[Add the contents (individual files) of the subproject to the parent archive]をオンにします。
次の2つのオプションでは、ペアレントアーカイブにアーカイブを追加すると選択したか、または個別のファイルを追加すると選択したかによって、表現が異なります。
どちらの場合でも、アーカイブまたはファイルを、ペアレントアーカイブのルートに追加するか、またはペアレントアーカイブの他の場所を指定するか尋ねられます。
ナビゲーションペインの[Project]タブに新しいプロジェクトが表示されます。必要に応じて、[Project Settings]ダイアログボックスを使用してプロジェクトの名前および場所を表示したり変更したりすることができます。
Workbenchプロジェクトおよびサブプロジェクトの構造を定義すると、 プロジェクトへの追加で説明するように、ソースディレクトリおよびファイルのプロジェクトへの追加を開始できます。
Workbenchを使用すると、最初にアーカイブの配備専用プロジェクトを作成することによって、ソースコードがないアーカイブを検証したり配備したりすることができます。
たとえば、完成したEJB JARアーカイブをソースコードなしでサードパーティから受け取った場合は、配備専用プロジェクトを作成できます。配備プロジェクトに追加することはできません。
注記: 完成したアーカイブをソースコードとともに受け取った場合は、配備専用プロジェクトではなく通常のWorkbenchプロジェクトを作成します。
EARは、配備専用プロジェクトおよび通常のプロジェクトの両方を含むことができます。たとえば、ソースがないEJB JARを含むEAR、およびそのEJB JARを呼び出す普通のWARを作成できます。
詳細については、
既存のソースファイルの使用を参照してください。
プロジェクトが配備専用であるか確認する方法 配備専用プロジェクトを開くと、次のようになります。
[Project]メニューの作成コマンドが無効になっています。これによって、誤ってアーカイブを上書きするすることが防止されます。上書きしてしまうと再作成できません。
[Project Settings]ダイアログボックスの[Contents]タブが、次のメッセージに置き換えられています。
The archive is deploy only. Its contents cannot be modified or examined.
次のような[New Project]ダイアログボックスが表示されます。
[Deploy-only]を選択して[OK]をクリックします。
New Projectウィザードで、次のようにプロジェクト情報を指定します
。
開いているプロジェクトがある場合は、新しいプロジェクトを、そのプロジェクトのサブプロジェクトとして追加するか、またはサブプロジェクトのサブプロジェクトとして追加するかをウィザードに尋ねられます。詳細については、先行のプロジェクト作成手順の Step 5を参照してください。
それ以外の場合は、ウィザードによってプロジェクトの詳細が要約されます。
ナビゲーションペインの[Project]タブに新しいプロジェクトが表示されますが、このコンテンツは編集できません。必要に応じて、[Project Settings]ダイアログボックスを使用してプロジェクトの名前および場所を表示したり変更したりすることができます。
Workbenchでサードパーティのツールを使用して作成されたJ2EEコンポーネントおよびモジュールを使用するには、次のように複数の方法があります。
Workbenchで検証および配備する構築不可能なアーカイブを作成する場合、配備アーカイブ(ソースコードがない完成したアーカイブ)を作成する必要があります。これらの手順の詳細については、 配備専用プロジェクトの作成を参照してください。
ソースコードがある場合に編集可能なアーカイブを構築するには、次に説明するように通常のWorkbenchプロジェクトを作成します。
次の手順で、結果としてできるアーカイブ構造がソースファイルのディレクトリ構造と同じになる(ディレクトリ中心の)方法を説明します。この同じ方法を使用して、配備専用アーカイブに新しいプロジェクトを作成できます。唯一の違いは、このタイプのアーカイブには後でソースファイルを追加できないことです。
ソースディレクトリ構造を作成し、ここにすべてのソースファイルを配置します。
既存のアーカイブを含ませる場合は、個別のファイルではなくディレクトリを追加するとプロジェクトソースファイルを管理しやすくなるので、ディレクトリ構造全体を追加します。プロジェクトディレクトリを設定すると、後でこのプロジェクトディレクトリに追加するファイルは、作成されるアーカイブに自動的に含まれます。
プロジェクトおよびサブプロジェクトの作成の説明のようにWorkbenchプロジェクトを作成します。
プロジェクトへの追加の説明のように、 Step 1で作成したソースディレクトリをプロジェクトに追加します。
ソースディレクトリをプロジェクトに追加すると、後の変更は自動的にアーカイブに含まれ、ファイルの複製を避けることができます。
プロジェクトができたら、コンポーネントおよびサブプロジェクトを追加できます。プロジェクトの開始方法は、まったく新しいプロジェクト(ファイル、ディレクトリ、およびモジュールがまだ存在しない)を作成するか、または(外部のIDEを使用して作成された)既存のJ2EEコンポーネントをプロジェクトに追加しアーカイブを配備できるようにWorkbenchに取り込むかによって異なります。
詳細については、
プロジェクト設計の考慮事項および
既存のソースファイルの使用を参照してください。
Workbenchでソースファイルを作成すると、任意のディレクトリの下でグループ化できます。ソースファイルを作成してからプロジェクトに追加するか、またはプロジェクトを開いてからソースファイルを追加できます。プロジェクト設定によって、アーカイブ内のプロジェクトの場所を指定します。
通常は、ソースファイルを作成する前にディレクトリファイルを作成してプロジェクトに追加します。ディレクトリをプロジェクトに追加する際に、そのディレクトリおよびサブディレクトリで作成したソースファイルは自動的にプロジェクトに追加されます。
ディレクトリのプロジェクトへの追加の詳細については、
プロジェクト全体の追加を参照してください。
コンポーネントウィザードを使用してソースファイルを作成する場合は、指定したディレクトリは自動的にプロジェクトに追加されます。
[New File]ダイアログボックスが表示されます。
[J2EE]タブで、ファイルタイプを選択して[OK]をクリックします。そのファイルタイプのウィザードが開始されます。
ウィザードには、適切な構造のJ2EEコンポーネントの作成と配備を容易にする組み込みのJ2EE論理があります。
ウィザードが終了すると、ウィザードによって生成されたファイルを含むソースエディタが編集ペインに開きます。
詳細については、次の項目を参照してください。
Workbenchのソースエディタの詳細については、
を参照してください。
配備関係のウィザードの詳細については、
および
を参照してください。
Webサービス関係のウィザードの詳細については、
および
を参照してください。
ソースファイル、ディレクトリ、およびサブプロジェクトを既存のぷろじぇくとに追加できます。
次の手順で、ファイルおよびディレクトリをプロジェクトに追加する方法を説明します。
[Project]>[Add to Project]の順に選択します。
他の方法については、
ファイルおよびディレクトリをプロジェクトに追加する他の方法を参照してください。
通常は、個別のファイルではなくディレクトリをプロジェクトに追加します。
次のオプションを設定して、ファイルまたはディレクトリのプロジェクトへの追加方法およびアーカイブ内の場所を指定します。
プロジェクトにディレクトリを追加する場合は、[Advanced]をクリックします。
次のプロジェクトエントリ設定によって、(ファイルまたはディレクトリの) Javaソースを生成されるファイルに含める方法を指定できます。
注記: これらのプロジェクトエントリは、([Project Settings]ダイアログボックスの[Contents]タブにある[Edit]をクリックすると)[Edit archive entry ]ダイアログボックスでも編集できます。
[OK]をクリックすると、ファイルまたはディレクトリが追加されます。
コンテンツがどのようにプロジェクトに追加されているかを表示(または編集)するには、[Project Settings]ダイアログボックスの[Contents]タブをクリックします。
プロジェクトコンテンツの編集の詳細については、
プロジェクトコンテンツの設定の管理を参照してください。
ファイルおよびディレクトリをプロジェクトに追加する他の方法 [Project]>[Add to Project]の順に選択する方法は、ファイルおよびディレクトリをプロジェクトに追加する方法の1つでしかありません。他には次の方法があります。
[Project Settings]ダイアログボックスの[Contents]タブにある[Add Entry]または[ Add Directory ]をクリックする
ナビゲーションペインの[Directory]タブで、追加するファイルまたはディレクトリのポップアップ(マウスの右ボタン)メニューを使用して[Add to Project]を選択する
隣接していない複数のファイルはCtrlを押しながらクリックし、隣接する複数のファイルはShiftを押しながらクリックすると、同時に複数のファイルを追加できます。
個別のファイルを追加する場合の注意 通常は、ディレクトリ全体をプロジェクトに追加します。ただし、次の項目を追加することもできます。
サブプロジェクトをプロジェクト全体としてではなくコンテンツとしてトップレベルのプロジェクトに追加する場合、名前はグレー表示され括弧で囲まれてナビゲーションペインのアーカイブレイアウトビューに表示されます。
ナビゲーションペインの更新 Workbenchで変更を加えると、Workbenchによって、ナビゲーションペインの[Directory]タブおよび[Project]タブのコンテンツが自動的に更新されます。Workbenchの外で変更を加えた場合は、[View]>[Refresh]の順に選択するか、または<F5>を押して変更内容を表示します。
ディレクトリまたはディレクトリツリーをプロジェクトに追加する( ソースファイルのプロジェクトへの追加で説明されています)と、アーカイブ内のファイルおよびディレクトリの構造が、(ディスク上の)ソースディレクトリのファイルおよびディレクトリのレイアウトに一致します。
ディレクトリ全体を指定すると、ディスク上のそのディレクトリ内で後で変更、追加、削除した内容は、自動的にプロジェクトに反映されます。アーカイブファイルは、ファイルシステムの既存のソースディレクトリ構造から移動するだけで再配置できます。プロジェクトによって使用されるソースディレクトリ構造内であれば、このような変更内容は自動的にプロジェクトに反映されます。
除外されるもの ディレクトリ全体をプロジェクトに追加する際には、Workbenchによって、生成されるアーカイブから次のタイプのファイルが除外されます。
これらは一般的に、バックアップまたはバージョン制御情報のファイルであり、生成されるアーカイブには属しません。
次の手順で、サブプロジェクトをプロジェクトに追加する方法を説明します。
サブプロジェクトの作成の詳細については、
プロジェクトおよびサブプロジェクトの作成を参照してください。
[Project]>[Subproject]>[Subproject]の順に選択します。
他の方法については、
ファイルおよびディレクトリをプロジェクトに追加する他の方法を参照してください。
ファイルの選択ダイアログボックスが表示されます。
[Open]をクリックします。[Add to Project]ダイアログボックスが表示されます。
[Include in parent archive]をオンにすると、サブプロジェクトのコンテンツがペアレントアーカイブに追加されます。
[Include in parent archive]がオフの場合、サブプロジェクトはペアレントプロジェクトより前に作成されますが、そのコンテンツはペアレントアーカイブには含まれません。
(生成されたすべてのファイルを追加するのではなく)生成されたこのプロジェクトのアーカイブをペアレントアーカイブに追加するには、[Add the generated archive of the subproject to the parent archive]をオンします。
(生成されたアーカイブの代わりに)生成されたこのプロジェクトのファイルをペアレントアーカイブに追加するには、[Add the contents (individual files) of the subproject to the parent archive]をオンにします。
最後の2つのオプションでは、ペアレントアーカイブにアーカイブを追加すると選択したか、または個別のファイルを追加すると選択したかによって、表現が異なります。
[Add the generated archive of the subproject to the parent archive]をオンにした場合は、次のいずれかのオプションを設定して、指定したアーカイブのペアレントアーカイブへの追加方法を決定します。
[Add the contents (individual files) of the subproject to the parent archive]をオンにした場合は、次のいずれかのオプションを設定して、(生成されたサブプロジェクトのアーカイブではなく)サブプロジェクトのコンテンツの追加方法を決定します。
ヒント: コンテンツがどのようにプロジェクトに追加されているかを表示するには、[Project Settings]ダイアログボックスの[Contents]タブをクリックします。
プロジェクトコンテンツの追加の詳細については、
プロジェクトエントリの修正を参照してください。
ナビゲーションペインの[Project]タブを使用してプロジェクトを表示します。次の3つの方法で、ディレクトリおよびファイルがファイルシステムおよびアーカイブでどのように構成されているかを確認できます。
[Source layout]ビュー [source layout]ビューでは、ハードディスク上でのプロジェクトのファイルおよびディレクトリの構成が反映されます。サブプロジェクトは、フォルダとしてトップレベルに表示されます。
アーカイブビュー 「アーカイブレイアウトビュー」および「アーカイブコンテンツビュー」は両方とも、プロジェクトの作成の結果としてできるアーカイブの構成を反映します。アーカイブレイアウトビューは、プロジェクトファイルおよびディレクトリが、生成されるアーカイブでどのように構成されるかを表す開発指向の図であり、アーカイブコンテンツビューは、生成されるアーカイブの内容に最も近い表現になっています。この2つのビューには次のような相違点があります。
[Archive layout] では、 実際にはコンパイルされたファイル(.classファイル)がアーカイブに含まれていても、プロジェクトのソースファイル(.javaファイル)が表示されます。[Archive contents]では、アーカイブの内容であるコンパイルファイルが表示されます(.classファイルをダブルクリックすると対応するソースファイルがJavaエディタで編集用に開きますが、.javaファイルが見つからない場合は、.classファイルが[ Class Viewer]に開きます)。
次のように、[Archive layout]では、(アーカイブとしてではなく)コンテンツとして追加されたサブプロジェクトおよびペアレントアーカイブから除外されたサブプロジェクトを含むすべてのサブプロジェクトが表示されるので、プロジェクトの構成が確認できます。
ペアレントアーカイブから除外されたサブプロジェクトは、ペアレントアーカイブに再び含ませた場合の状態がアーカイブまたはプロジェクトになるかによって、アーカイブまたはプロジェクトの名前が使用されてグレー表示される
次のスクリーンでは、ResourceSetサブプロジェクトはアーカイブとして追加されたため、アーカイブ名を使用して表示されています。Customサブプロジェクトはコンテンツとしてプロジェクトに追加されてたため、グレー表示になっています。Sandboxサブプロジェクトはペアレントアーカイブから除外されたため、これもグレー表示になっています。
[Archive contents]では、サブプロジェクトは次のように表示されます。
次のスクリーンは、アーカイブレイアウトの例と同じプロジェクトのアーカイブコンテンツビューです。
ヒント: [Directory]タブまたは[Project]タブの下部のサブペインでマウスをファイルの上 に置くと、ファイルの完全な名前およびパスを確認できます。Workbenchツールチップは、アー カイブビューで、アーカイブに存在するファイル(WEB-INF/web.xmlなど)をディスク上の場所 (C:\dev\SimpleEar\web.xmlなど)と比較する場合に特に便利です。
開いているプロジェクトは、トップレベルのプロジェクトである場合、またはサブプロジェクトである場合があります。Workbenchを使用すると、ファイル、ディレクトリ、サブプロジェクト、パス、クラスパスなどを追加または修正することによって、開いているプロジェクトの設定を管理できます。次の操作によってプロジェクトを修正できます。
チーム開発および設計の考慮事項の詳細については、『開発ガイド』を参照してください。
プロジェクトを開くには、(拡張子が.SPFである)プロジェクトファイルを開きます。トップレベルのプロジェクトファイルに加える変更内容は、同じトップレベルのプロジェクトの一部である他のサブプロジェクトとともに、自動的にそのファイルに保存されます。
同じトップレベルのプロジェクトの一部であれば、一度に複数のプロジェクトを開くこともできます。たとえば、EAR、WAR、EJB JAR、およびアプリケーションクライアントが同じトップレベルのEARの一部であればすべて同時に開けます。
注記: コンポーネントまたはサブプロジェクトを追加するたびに、プロジェクトファイルは自動的に保存されます。エディタを使用してソースファイルに変更を加える場合にのみ、明示的に保存する必要があります。
プロジェクトファイル(.SPF)を選択し、[Open]をクリックします。
左上のナビゲーションペインに、プロジェクトのアーカイブレイアウトが表示されます。ファイルは、ナビゲーションペインの下部のサブペインに表示されます。
ヒント: [Directory]タブのプロジェクトファイルまで移動してファイルをダブルクリッ クすると開けます。
[Project Settings]ダイアログボックスの[General]タブでは、開いているプロジェクトの情報を表示したり、プロジェクトクラスファイルを保存するソースディレクトリの場所を変更したりすることができます。
[General]タブを選択して、次のようにオプションを表示または修正します。
[Project Settings]ダイアログボックスの[Contents]タブを使用して、ファイルおよびディレクトリのプロジェクトが、ソースレイアウトおよびアーカイブレイアウトでどのように構成されるかを指定します。
このダイアログボックスでは、テーブルのプロジェクトエントリに関してファイルおよびディレクトリを定義できます。各エントリにより、ファイルシステムのソースファイルまたはディレクトリの場所、およびプロジェクトアーカイブへの追加方法が定義されます。
ファイルおよびディレクトリの場所を指定する際は、環境変数、絶対パス名、および相対パス名を使用できます。
Windows環境変数は、開発チームが、プロジェクトのディレクトリ構造の外にあるファイル(単一プロジェクトファイルまたはJAR)を共有する場合に便利です。共有されるプロジェクトファイルによって、異なるチームメンバーのマシンの異なる場所に存在するファイルまたはディレクトリが参照される必要があります。通常Workbenchでは、プロジェクトのルートディレクトリの下にないファイルを検索する場合に環境変数を使用します。
環境変数は、Windows Systemコントロールパネルの[Environment]タブを使用して設定します。構文%varname%または${varname}を使用して、Workbenchの変数を参照します。次の場合にWorkbench変数を使用できます。
[Add to Project]ダイアログボックス\qを使用してプロジェクトを編集または追加する場合
たとえば、d:\utilproj\util.spf を %UTIL_PROJECT_DIR%\util.spfまたは ${UTIL_PROJECT_DIR}\util.spfに変更します。
[Project Settings]ダイアログボックスの[Classpath/Dependencies]タブを使用してプロジェクトのクラスパスを編集する場合
たとえば、%UTIL_PROJECT_DIR%\util.jarまたは ${3RDPARTYJARS}\helpers.jar をクラスパスに追加して、サブプロジェクトに含ませます。
注記: (Windowsコントロールパネルで設定した)環境変数の値を有効にするには、Workbenchを再起動する必要があります。
(環境変数ではなく)相対パスを使用すると、プロジェクトのディレクトリツリーにある共有のプロジェクトファイルを検索しやすくなります。たとえば、「src」ディレクトリによって、プロジェクトのディレクトリの下にある「src」というディレクトリが参照されるように指定できます。
「プロジェクトルート」は、たとえばC:\MyProj\Proverbsのように、プロジェクトファイルが含まれるハードディスク上のディレクトリです。相対パスはプロジェクトのディレクトリ内のファイルを参照する場合に使用でき、たとえば2つ上のディレクトリレベルを指定するには.\..\mydir\file.jarを指定します。
デフォルトでは、ソースディレクトリがルートディレクトリの下にネストされていれば、指定するファイルまたはディレクトリのパスは、プロジェクトのルートディレクトリの相対パスです。それ以外では、ハードコードされたパスを指定する必要があります。Workbenchで設定した場所はプロジェクトファイルに保存されます。
場所の設定は、サブプロジェクトおよびおそらく他の開発者の間で共有されるため、絶対パスは避けるようにします。プロジェクトのディレクトリにないプロジェクトファイルおよび他のソースファイルを共有する必要がある場合は、Workbenchで環境変数を設定します。
チーム設計の考慮事項の詳細については、『開発ガイド』を参照してください。
現在のプロジェクトおよび関連するサブプロジェクトの中から選択できます。
[General]タブで、クラスディレクトリおよびアーカイブディレクトリを表示および修正(必要な場合)します。
注記: Workbench内でプロジェクトのタイプ、ディレクトリおよびファイル名を完全に修正することはできません。 プロジェクトのリネームを参照してください。
プロジェクトエントリにはファイルおよびディレクトリがあります。次の図に示すように、各プロジェクトエントリは、ソースの場所および関連するアーカイブの場所によって定義されます。
エントリまたはディレクトリの追加の詳細については、
ソースファイルのプロジェクトへの追加を参照してください。エントリの削除の詳細については、
プロジェクトからのファイル、ディレクトリ、サブプロジェクトの削除を参照してください。
エントリをダブルクリックするか、またはエントリを選択して[Edit]をクリックし、修正するプロジェクトエントリを選択します。
表示される[Edit archive entry]ダイアログボックスは、ファイル、ディレクトリ、またはサブプロジェクトエントリのどれを削除するかによって異なります。
「ファイル」を選択すると、次のダイアログボックスが表示されます。このダイアログボックスの設定は、[Add to Project]ダイアログボックスの設定と同じです。詳細については、 プロジェクトへの追加を参照してください。
「ディレクトリ」を選択すると、次のダイアログボックスが表示されます。このダイアログボックスの設定は、[Add to Project]ダイアログボックスの設定と同じです。詳細については、 プロジェクトへの追加を参照してください。
「サブプロジェクト」を選択すると、次のダイアログボックスが表示されます。このダイアログボックスの設定は、[Add to Project]ダイアログボックスの設定と同じです。詳細については、 サブプロジェクトのプロジェクトへの追加を参照してください。
プロジェクトから項目を削除するには、[ Project Settings]ダイアログボックスを使用する、または[Project]タブの[Remove From Project]ポップアップメニューを使用するという2つの方法があります。Workbench内からプロジェクトのソースファイルまたはディレクトリを削除しても、ハードディスクからは削除されません。Workbenchによって、ファイルまたはディレクトリを参照するエントリ(または規則)が削除されるだけです。
[Project Settings]ダイアログボックスを使用してファイルを削除する
プロジェクトから削除する1つまたは複数のエントリを選択します。隣接する項目を選択するには、<Shift>を押しながらクリックします。隣接していない項目を選択するには、<Ctrl>を押しながらクリックします。
[OK]をクリックして、削除を実行します。[Cancel]をクリックすると、削除を実行せずにダイアログボックスが閉じます。
[OK]をクリックした場合、Workbenchによって項目が削除され、プロジェクト内で参照されないようになります。
ナビゲーションペインの[Project]タブで、削除するファイルまたはディレクトリを右クリックすることもできます。[Remove From Project]を選択すると、次のように、[Project Settings]の定義(すでに説明済みで、SPFファイルにも反映されています)からプロジェクトエントリが削除されます。
明示的なファイル(ネストされたディレクトリに含まれる他のファイルを参照しないファイル)を削除する場合は、Workbenchによってエントリが削除され、プロジェクト内で参照されないようになります。
ネストされたサブディレクトリの一部として追加された個別のファイルまたはディレクトリを削除する場合は、Workbenchによって、プロジェクトからツリー全体を削除することを確認するメッセージが表示されます。たとえば、ネストされたプロジェクトディレクトリからファイルを除外するには、プロジェクトからディレクトリを削除(してファイルなしで後からもう一度追加)するか、またはハードドライブからファイルを削除します。
Workbenchによって、削除されるディレクトリツリーが表示されます。たとえば、src\a\b\c.javaを選択して削除する場合は、Workbenchによって、srcディレクトリツリーが削除されることが通知されます。これを確定すると、Workbenchによって、プロジェクトからツリー全体が削除されます。
プロジェクト(.SPFの前にある名前)をリネームする必要がある場合がまれにあります。一般的には、プロジェクトファイルを直接編集することはありませんが、この場合は直接編集しなければなりません。
(オプション)[Project Settings]ダイアログボックスの[Contents]タブで、クラスディレクトリを変更して、更新されたプロジェクト名に一致するようにします。これにより、新しいプロジェクト名がbuildディレクトリのサブディレクトリとして表示されます。
Step 2および Step 3は、すべてのプロジェクト名を一貫させる場合にのみ必要です。これらを調整しなくてもプロジェクトは作成されます。
Workbenchによって、個別のJavaソースファイルを「コンパイル」したり、完全なプロジェクトを「作成」したり、J2EEサーバへの配備のためにコンポーネントをJ2EE互換の「アーカイブ」にパッケージ化したりするために必要なツールが提供されます。この節では、次の手順を説明します。
コンパイルおよび作成のWorkbench環境のセットアップには、次の項目が含まれます。
デフォルトでは、WorkbenchによってJavac 1.3コンパイラが使用されます。[Preferences]ダイアログボックスの[Build]タブを使用すると異なるコンパイラを指定できます。Javaファイルがコンパイルされるごとにコンパイラに送られるオプションも指定できます。
詳細については、
作成設定を参照してください。
プロジェクトクラスパスは、Workbenchによって検索される、ソースコードが参照するコンポーネントの場所を定義します。
詳細については、
環境変数の使用を参照してください。
Workbenchによって、次の値が使用されプロジェクトクラスパスが構築されます。
ペアレントプロジェクトのクラスパス サブプロジェクトを含むプロジェクトがある場合、次のように、Workbenchによってコンポーネントが作成されペアレントプロジェクトのクラスパスが構築されます。
ペアレントプロジェクトが作成される前に、参照されるプロジェクトが作成されます。
参照されるプロジェクトは、[Project Settings]ダイアログボックスの[Contents]タブまたは[Classpath/Dependencies]タブで指定されます。
参照されるプロジェクトの作成が成功すると、Workbenchによって、次の項目が使用されペアレントプロジェクトが作成されます。
EARプロジェクトがあり、EARにWAT (サブプロジェクト)が含まれ、WARにユーティリティJARが含まれるとします。WorkbenchによってまずJARのクラスパスが構築され、次にWARのクラスパスが構築されます。
[Classpath/Dependencies]タブを選択してクラスパスエントリを選択します。
[Add Entry ]または[Add Directory]をクリックします。
選択ダイアログボックスが表示されます。
ファイルを追加する場合は、[Browse]をクリックし、適切なディレクトリまで移動して1つまたは複数のファイル(アーカイブまたはプロジェクトファイル)を選択し、[Open]をクリックします。隣接していない複数のファイルを追加するには<Ctrl>を押しながらクリックし、隣接する複数のファイルは<Shift>を押しながらクリックします。
ダイアログボックスでファイルを検索する代わりに、1つまたは複数のファイルを直接入力してプロジェクトのクラスパスに追加することもできます。各エントリを引用符で囲み、エントリ間はスペースで区切ります。入力時は環境変数を指定できます( 環境変数の使用を参照)。
ディレクトリを追加する場合、ディレクトリを入力(必要な場合は環境変数を指定)するか、または[Browse]をクリックしてディレクトリを選択します。
すべての必要なクラスパスエントリを追加、配置、および編集したら、[OK]をクリックして[Project Settings]ダイアログボックスを閉じます。
これで開いているプロジェクトを作成できるようになりました。
Workbench[Project ]メニューのアイテムを使用すると、個別のJavaファイルを「コンパイル」したり、プロジェクト全体を「作成」したり、プロジェクト「アーカイブ」を作成したりすることができます。または、ナビゲーションペインでファイル、プロジェクト、またはアーカイブを右クリックしてポップアップメニューの項目を実行できます。次のメニュー項目があります。
|
プロジェクトメニュー項目 |
機能 |
|---|---|
|
Compile |
現在開いているJavaファイルがコンパイルされます。 (現在開いているファイルと、プロジェクトおよびサブプロジェクトの他のファイル間にある相互依存関係は、チェックされません) 注記: [Compile]は、ナビゲーションペインでプロジェクトファイルを右クリックすると表示されるポップアップメニューからは使用できません。 |
|
Build |
|
|
Rebuild All |
|
|
Build and Archive |
|
|
Rebuild All and Archive |
Javaファイルが開いている状態で、[Projects]>[Compile]の順に選択します。
WorkbenchによってJavaファイルがコンパイルされ、コンパイルメッセージが出力ペインの[Build]タブに書き込まれます。
Workbenchプロジェクトが開いている状態で、[Projects]>[Build and Archive]の順に選択します。
Workbenchによって、ビルドメッセージまたはアーカイブメッセージが出力ペインの[Build]タブに書き込まれます。
Workbenchでは、WorkbenchIDEの外でプロジェクトを作成できるコマンドラインツール(「xwbbuild」)が提供されます。
xwbbuild projectFile operation
ここで、
|
引数 |
説明 |
|---|---|
|
projectFile |
作成するプロジェクトのプロジェクト(.SPF)ファイルへのパス |
|
operation |
次のいずれか1つ |
たとえば、次のコマンドによってmyApp Workbenchプロジェクトのアーカイブが構築および作成されます(前回プロジェクトが作成されアーカイブされたときより後に変更が加えられた場合)。
xwbbuild c:\WorkbenchProjects\myApp\myApp.spf build
注記: WorkbenchIDEおよびxwbbuildによるビルド処理には、Apache Antが使用されます。xwbbuildを提供できる追加のコマンドラインオプションおよびAntを使用したカスタム処理の方法を含む、Antの使用の詳細については、 Antの使用を参照してください。
アーカイブの配備記述子は、アーカイブの配備を試行する前に検証します。[Project]>[Validate Archive]の順に選択すると、SunのVerifierクラスが実行されます。
検証プロセス 検証の際は、Workbenchによって次の項目が実行されます。
プロジェクトアーカイブの配備記述子が、J2EE仕様によって指定される配備記述子DTDおよびアーカイブの内容に対して検証されます。
検証出力 [Validate Archive]によって、次の場所に情報が書き込まれます。
出力ペインの[Validate]タブで、文字列「result.txt」が含まれているラインをダブルクリックすると、ファイルをテキストエディタで開くことができます。result.txtファイルには次の項目が表示されます。
プロジェクトが開いている状態で、[Project]>[Validate Archive]の順に選択します。
このメニュー項目を選択すると、アーカイブが構築され(構築が成功した場合)検証されます。
検証エラーがある場合は、検証ペインで次のテキストをダブルクリックします。
Look in file "C:\TEMP\Results.txt" for detailed results on test assertions.
result.txtファイルが開きます。
エラーの確認および修正が終了したら、アーカイブの検証を再試行できます。
|
ツールガイド 05/22/03 08:41:32 |
Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC, a wholly owned subsidiary of Novell, Inc. All rights reserved.