NetBeans IDE: 既存のアプリケーションのインポート (詳細)

プロジェクトの種類の比較

標準 自由形式

NetBeans 生成の Ant 構築スクリプトを使用して、アプリケーションを構築、実行、デバッグします。

既存の Ant スクリプト内のターゲットを使用し、アプリケーションの実行、コンパイル、生成物の削除、テスト、デバッグを行います。 Ant スクリプトに、これらの機能のターゲットが含まれていない場合、その機能は使用できません。 Ant スクリプトまたは補助的な Ant スクリプトで、そうした機能を実現するターゲットを作成することができます。
プロジェクト内のすべてのソースパッケージルートは同じクラスパスを使用し、すべてのテストパッケージルートも同じクラスパスを使用します。 プロジェクト内のソースルート間で方向に関するクラスパス関係が存在することがあります。 プロジェクトの設定値は、コード補完やリファクタリング、エラーの強調表示機能を使用できるようにするために、Ant スクリプトに宣言されている内容とクラスパスの関係をまねたものです。

構築プロセスは、「プロジェクトプロパティー」ダイアログで基本的なオプションを設定するか、NetBeans 生成の Ant スクリプト内のターゲットを書き換えることによってカスタマイズします。

コンパイル時および実行時オプションはすべて、Ant 構築スクリプトで設定します。

IDE は、各プロジェクトのすべてのソースルートを 1 つの JAR ファイル (Java SE プロジェクトおよび EJB プロジェクトの場合) または 1 つの WAR ファイル (Web プロジェクトの場合) に書き込みます。

プロジェクトの Ant スクリプトに指定されている個数の構築物が生成されます。

IDE には、標準プロジェクト用として次のテンプレートが付属しています。

  • Java アプリケーション
  • Java ライブラリ
  • Web アプリケーション
  • EJB モジュールプロジェクト
  • エンタープライズアプリケーションプロジェクト
  • 既存のソースを使用する Java プロジェクト
  • 既存のソースを使用する Web プロジェクト
  • 既存のソースを使用する EJB モジュール
  • 既存のソースを使用するエンタープライズアプリケーション

IDE には、自由形式プロジェクト用として次のテンプレートが付属しています。

  • 既存の Ant スクリプトを使用する Java プロジェクト
  • 既存の Ant スクリプトを使用する Web プロジェクト
  • 既存の Ant スクリプトを使用する EJB モジュール

ソースフォルダ

ソースコードを含むフォルダを追加する場合は、パッケージツリーの最上位フォルダを含むフォルダを追加する必要があります。たとえば、com.jcardshark.blackjack.ui パッケージの場合は、com フォルダを含むフォルダを追加します。

標準。1 つのプロジェクトに複数のソースフォルダを持つことができますが、それらソースフォルダはすべて同じクラスパスを使用し、同じ JAR または WAR ファイルにパッケージ化されます。 それぞれのプロジェクトは 1 つのコンパイルユニットを表します。 コンパイルユニットが異なるソースフォルダを操作する場合は、それぞれに独立したプロジェクトを作成し、必要に応じて互いのクラスパス上にそれらプロジェクトを置きます。

自由形式。複数のソースフォルダを持ち、フォルダ間の複雑なクラスパス関係を定義できます。

プロジェクトフォルダ

プロジェクトフォルダには、プロジェクトの構築および実行方法を制御する Ant スクリプトとプロパティーファイルが含まれます。

標準。 プロジェクトフォルダには、次の 2 つの Ant スクリプトが含まれます。

プロジェクトフォルダには、コンパイル済みクラスと JAR ファイル (Java SE プロジェクトの場合) か WAR ファイル (Web プロジェクトの場合)、Javadoc 用の出力フォルダも含まれます。

自由形式。 自由形式プロジェクトで「場所」を指定する場合、その場所は必ずしも Ant スクリプトを含むフォルダでなくてもかまいません。 たとえばソースパッケージフォルダのすべてを 1 つのフォルダにまとめている場合は、Ant 構築スクリプトが含まれていなくても、そのフォルダをプロジェクトの場所として設定することができます。 出力フォルダの場所は、Ant スクリプトの設定によって異なります。

Java BluePrints Project Conventions

Java BluePrints Project Conventions は、J2EE アプリケーションの構造化に関する推奨規則を定義しています。 これら規則の目的は、開発者がアプリケーションプロジェクトに関係するファイルおよびディレクトリを論理的に編成する手助けをすることにあります。 既存のソースからエンタープライズアプリケーションをインポートする場合、そのアプリケーションは BluePrints 規則に従っている必要があります。

下図は、エンタープライズアプリケーションに関する BluePrints 規則を示しています。 詳細は、http://java.sun.com/blueprints/code/projectconventions.html を参照してください。

illustration of the BluePrints conventions

Web モジュールのルート

Web モジュールのルートとは、Web アプリケーションの最上位フォルダのことです。 このフォルダには、JSP ページやクライアント側クラスとアーカイブ、画像などの静的 Web リソースが格納されます。 下図は、一般的な Web アプリケーションのソース構造を示しています。

主プロジェクト

1 つのアプリケーションを複数のプロジェクトに分けている場合は、主プロジェクトがアプリケーションへの入り口の働きをします。 通常、主プロジェクトには、そのアプリケーションを起動する主クラスが含まれます。 エンタープライズアプリケーションの主プロジェクトは、必ず、EJB モジュールおよび Web モジュールを含むエンタープライズアプリケーションプロジェクトにします。

「実行」、「構築」などのメニューコマンドの多くには、主プロジェクトに対するキーボードショートカットが用意されています。 「プロパティー」ウィンドウで個別プロジェクトのプロジェクトノードを右クリックすることによって、そのプロジェクトのすべてのコマンドにアクセスすることができます。

プロジェクトを主プロジェクトにするには、「プロジェクト」ウィンドウでプロジェクトのノードを右クリックして、「主プロジェクトとして設定」を選択します。

Ant ターゲットへのコマンドの関連付け

自由形式プロジェクトでは、Ant スクリプトを使用して、次のようなすべての IDE アクションに対するターゲットを提供します。

これらのアクション用のターゲットが Ant スクリプトに含まれていない場合で、アクションに関連付けられたコマンドが実行された場合、IDE は、独立した ide-targets.xml 構築スクリプトにそのアクション用の基本的な Ant ターゲットを生成します。 こうした場合の多くは、生成された構築スクリプトを手動で編集し、プロジェクトのクラスパスや主クラスなどの情報を指定する必要があります。

詳細は、高度な自由形式プロジェクトの構成を参照してください。

「プロジェクト」ウィンドウと「ファイル」ウィンドウ

「プロジェクト」ウィンドウは、プロジェクトのパッケージに基づくビューです。 プロジェクトのノードを右クリックして、そのプロジェクトにコマンドを実行することができます。 プロジェクトのノードを右クリックし、「プロパティー」を選択すると、そのプロジェクトのオプションを設定できます。

エンタープライズアプリケーションの場合、「プロジェクト」ウィンドウでは、論理ノードにほかの種類のファイルもグループ分けされています。 詳細は、下記の「エンタープライズアプリケーション」を参照してください。

「ファイル」ウィンドウは、ディスク上でのプロジェクトファイルの物理的な配置を示します。 プロジェクトごとにプロジェクトフォルダ 1 つとすべてのソースフォルダが表示されます。 nbproject フォルダには、プロジェクトのプロジェクトメタデータが含まれます。

クラスパスの設定

標準。プロジェクトのクラスパスにクラスを追加すると、IDE のコード補完およびリファクタリングでそれらのクラスが利用できるようになります。 プロジェクトには、次の種類のクラスパス要素を追加することができます。

自由形式。Ant スクリプトで、コンパイル時および実行時のクラスパス要素を明示的に処理する必要があります。 プロジェクトを作成するときに入力されたクラスパスの設定値を使用して、プロジェクトのコード補完やエラーの強調表示、リファクタリングが使用できるようになります。 これらのクラスパス設定は、Ant スクリプト内のクラスパスの定義に一致している必要があります。 プロジェクト全体にクラスパスを 1 つ設定することも、プロジェクト内のソースフォルダごとにクラスパスを設定することもできます。 既存の自由形式プロジェクトに対してクラスパスを宣言するには、「プロジェクト」ウィンドウでそのプロジェクトのノードを右クリックして、「プロパティー」を選択します。 次に、「クラスパス」をクリックして、ソースのルートごとにクラスパスを設定します。

コンテキストパスの設定

コンテキストは、同じサーバーインスタンス上に配備されている Web アプリケーションの間でリソースを識別するための手段です。

Web アプリケーションのコンテンツの URL 名前空間は、そのアプリケーションのコンテキストによって決まります。 Web アプリケーションのコンテキストプロパティー値を設定すると、http://hostname:port/context/servlet_or_jsp でその Web アプリケーションにアクセスできます。 たとえば、プロパティー値を /HelloWeb に設定した場合は、http://hostname:port/HelloWeb/index.jsp で Web アプリケーションにアクセスできます。

コンテキストパスはスラッシュで始まらなければならないことと、空白は使用できないことに注意してください。

Sun Java System Application Server

Java EE アプリケーションを開発するには、コンピュータにそのアプリケーションのローカルインスタンスをインストールし、IDE で登録する必要があります。 IDE は、そのローカルのインストール場所にあるライブラリおよびツールを使用して、エンタープライズアプリケーションプロジェクトのソースコードのコンパイルや生成を行えるようにします。 Sun Java System Application Server のローカルインスタンスを登録すると、サーバーの複数リモートインスタンスを登録し、エンタープライズアプリケーションを配備できます。

Sun Java System Application Server, Platform Edition の開発および配備のための利用は無料です。