|
ソースコードを含むフォルダを追加する場合は、パッケージツリーの最上位フォルダを含むフォルダを追加する必要があります。たとえば、
com.jcardshark.blackjack.uiパッケージの場合は、comフォルダを含むフォルダを追加します。標準。1 つのプロジェクトに複数のソースフォルダを持つことができますが、それらソースフォルダはすべて同じクラスパスを使用し、同じ JAR または WAR ファイルにパッケージ化されます。 それぞれのプロジェクトは 1 つのコンパイルユニットを表します。 コンパイルユニットが異なるソースフォルダを操作する場合は、それぞれに独立したプロジェクトを作成し、必要に応じて互いのクラスパス上にそれらプロジェクトを置きます。
自由形式。複数のソースフォルダを持ち、フォルダ間の複雑なクラスパス関係を定義できます。
プロジェクトフォルダには、プロジェクトの構築および実行方法を制御する Ant スクリプトとプロパティーファイルが含まれます。
標準。 プロジェクトフォルダには、次の 2 つの Ant スクリプトが含まれます。
- nbproject/build-impl.xml。 プロジェクトの処理に関する命令が含まれます。 IDE によって生成されるファイルで、編集しないでください。
- build.xml。 build-impl.xml からターゲットがインポートされます。このファイルを編集し、既存のターゲットを無効にしたり、新しいターゲットを作成したりできます。
プロジェクトフォルダには、コンパイル済みクラスと JAR ファイル (Java SE プロジェクトの場合) か WAR ファイル (Web プロジェクトの場合)、Javadoc 用の出力フォルダも含まれます。
自由形式。 自由形式プロジェクトで「場所」を指定する場合、その場所は必ずしも Ant スクリプトを含むフォルダでなくてもかまいません。 たとえばソースパッケージフォルダのすべてを 1 つのフォルダにまとめている場合は、Ant 構築スクリプトが含まれていなくても、そのフォルダをプロジェクトの場所として設定することができます。 出力フォルダの場所は、Ant スクリプトの設定によって異なります。
Java BluePrints Project Conventions は、J2EE アプリケーションの構造化に関する推奨規則を定義しています。 これら規則の目的は、開発者がアプリケーションプロジェクトに関係するファイルおよびディレクトリを論理的に編成する手助けをすることにあります。 既存のソースからエンタープライズアプリケーションをインポートする場合、そのアプリケーションは BluePrints 規則に従っている必要があります。
下図は、エンタープライズアプリケーションに関する BluePrints 規則を示しています。 詳細は、http://java.sun.com/blueprints/code/projectconventions.html を参照してください。
Web モジュールのルートとは、Web アプリケーションの最上位フォルダのことです。 このフォルダには、JSP ページやクライアント側クラスとアーカイブ、画像などの静的 Web リソースが格納されます。 下図は、一般的な Web アプリケーションのソース構造を示しています。
1 つのアプリケーションを複数のプロジェクトに分けている場合は、主プロジェクトがアプリケーションへの入り口の働きをします。 通常、主プロジェクトには、そのアプリケーションを起動する主クラスが含まれます。 エンタープライズアプリケーションの主プロジェクトは、必ず、EJB モジュールおよび Web モジュールを含むエンタープライズアプリケーションプロジェクトにします。
「実行」、「構築」などのメニューコマンドの多くには、主プロジェクトに対するキーボードショートカットが用意されています。 「プロパティー」ウィンドウで個別プロジェクトのプロジェクトノードを右クリックすることによって、そのプロジェクトのすべてのコマンドにアクセスすることができます。
プロジェクトを主プロジェクトにするには、「プロジェクト」ウィンドウでプロジェクトのノードを右クリックして、「主プロジェクトとして設定」を選択します。
自由形式プロジェクトでは、Ant スクリプトを使用して、次のようなすべての IDE アクションに対するターゲットを提供します。
- 構築
- 生成物の削除
- プロジェクトのコンパイル
- 個別ファイルのコンパイル
- JavaServer Pages ファイルのコンパイル
- プロジェクトの実行
- 個別ファイルの実行
- Javadoc の生成
- JUnit テストの実行
- デバッガでのプロジェクトの実行
- デバッガでの個別ファイルの実行
- コードの変更の適用とデバッグの継続
- Web プロジェクトの再配備
これらのアクション用のターゲットが Ant スクリプトに含まれていない場合で、アクションに関連付けられたコマンドが実行された場合、IDE は、独立した ide-targets.xml 構築スクリプトにそのアクション用の基本的な Ant ターゲットを生成します。 こうした場合の多くは、生成された構築スクリプトを手動で編集し、プロジェクトのクラスパスや主クラスなどの情報を指定する必要があります。
詳細は、高度な自由形式プロジェクトの構成を参照してください。
「プロジェクト」ウィンドウは、プロジェクトのパッケージに基づくビューです。 プロジェクトのノードを右クリックして、そのプロジェクトにコマンドを実行することができます。 プロジェクトのノードを右クリックし、「プロパティー」を選択すると、そのプロジェクトのオプションを設定できます。
エンタープライズアプリケーションの場合、「プロジェクト」ウィンドウでは、論理ノードにほかの種類のファイルもグループ分けされています。 詳細は、下記の「エンタープライズアプリケーション」を参照してください。
「ファイル」ウィンドウは、ディスク上でのプロジェクトファイルの物理的な配置を示します。 プロジェクトごとにプロジェクトフォルダ 1 つとすべてのソースフォルダが表示されます。
nbprojectフォルダには、プロジェクトのプロジェクトメタデータが含まれます。
標準。プロジェクトのクラスパスにクラスを追加すると、IDE のコード補完およびリファクタリングでそれらのクラスが利用できるようになります。 プロジェクトには、次の種類のクラスパス要素を追加することができます。
- JAR ファイル。Java SE プロジェクト専用のコンパイル済み Java クラスをパッケージ化したライブラリ。
- WAR ファイル。Web プロジェクト専用のコンパイル済み Web クラスをパッケージ化したライブラリ。
- ライブラリ。コンパイル済みクラス (JAR/WAR ファイル) とデバッグ用のソースコード、Javadoc を 1 つにまとめたもの。 メインウィンドウで「ツール」>「ライブラリマネージャー」を選択することによって、ライブラリを作成することができます。
- プロジェクト。別の NetBeans IDE プロジェクトから得られた構築出力 (JAR/WAR ファイル)、デバッグ用のソースコード、Javadoc。 プロジェクトに必須プロジェクトを追加して、主プロジェクトを構築すると、両方のプロジェクト用 JAR/WAR ファイルすべてが作成されます (Java SE のサンプルで BlackJackUI を構築すると、必須プロジェクトの BlackJackLib も作成される)。
自由形式。Ant スクリプトで、コンパイル時および実行時のクラスパス要素を明示的に処理する必要があります。 プロジェクトを作成するときに入力されたクラスパスの設定値を使用して、プロジェクトのコード補完やエラーの強調表示、リファクタリングが使用できるようになります。 これらのクラスパス設定は、Ant スクリプト内のクラスパスの定義に一致している必要があります。 プロジェクト全体にクラスパスを 1 つ設定することも、プロジェクト内のソースフォルダごとにクラスパスを設定することもできます。 既存の自由形式プロジェクトに対してクラスパスを宣言するには、「プロジェクト」ウィンドウでそのプロジェクトのノードを右クリックして、「プロパティー」を選択します。 次に、「クラスパス」をクリックして、ソースのルートごとにクラスパスを設定します。
コンテキストは、同じサーバーインスタンス上に配備されている Web アプリケーションの間でリソースを識別するための手段です。
Web アプリケーションのコンテンツの URL 名前空間は、そのアプリケーションのコンテキストによって決まります。 Web アプリケーションのコンテキストプロパティー値を設定すると、http://hostname:port/context/servlet_or_jsp でその Web アプリケーションにアクセスできます。 たとえば、プロパティー値を /HelloWeb に設定した場合は、http://hostname:port/HelloWeb/index.jsp で Web アプリケーションにアクセスできます。
コンテキストパスはスラッシュで始まらなければならないことと、空白は使用できないことに注意してください。
Java EE アプリケーションを開発するには、コンピュータにそのアプリケーションのローカルインスタンスをインストールし、IDE で登録する必要があります。 IDE は、そのローカルのインストール場所にあるライブラリおよびツールを使用して、エンタープライズアプリケーションプロジェクトのソースコードのコンパイルや生成を行えるようにします。 Sun Java System Application Server のローカルインスタンスを登録すると、サーバーの複数リモートインスタンスを登録し、エンタープライズアプリケーションを配備できます。
Sun Java System Application Server, Platform Edition の開発および配備のための利用は無料です。