プロジェクト依存関係には、以下の 3 つの原則があります。
以下のような通常の手順では、依存関係が自動的に作成されます。
または
EAR に追加したプロジェクトは、「アプリケーション スコープ」です。EAR にプロジェクトを追加するには、プロジェクトの作成時に [ear にプロジェクトを追加] を選択するか、EAR プロジェクトの J2EE モジュール依存関係のプロパティ ページを使用します。J2EE モジュール依存関係のプロパティ ページにアクセスするには、EAR プロジェクトを右クリックし、[プロパティ|J2EE モジュール依存関係] をクリックします。
以下の場合は、プロジェクト依存関係の明示的なコンフィグレーションが必要になることがあります。
注意 : [プロジェクト参照] パネル ([プロジェクト|プロパティ|プロジェクト参照]) を使用してプロジェクト参照を編集しても、適切な J2EE モジュールの依存関係は更新されません。[プロジェクト参照] パネルを使用した手動での参照の変更はしないようにする必要があります。このパネルの代わりに、[J2EE モジュール依存関係] パネル ([プロジェクト|プロパティ|J2EE モジュール依存関係) を使用するようにします。[J2EE モジュール依存関係] パネルの詳細な使用方法については、以下を参照してください。
プロジェクトはローカルで正しくコンパイルされたのに、EAR にすべてのプロジェクトが含まれていなかったためにサーバに正しくデプロイされなかった場合は、この依存関係を明示的にコンフィグレーションしなければならないことがあります。EAR に関連付けられているすべてのプロジェクト (EJB プロジェクト、ユーティリティ プロジェクト、動的 Web プロジェクト、Web サービス プロジェクトなど) を EAR に追加する必要があります。
プロジェクトを EAR プロジェクトに追加するには、次の手順に従います。
        
    ユーティリティ プロジェクトや EJB プロジェクトを EAR に追加しても、同じ EAR 内の Web プロジェクトから利用できるようにはなりません。EAR 内の Web プロジェクトにユーティリティ プロジェクトや EJB プロジェクトを追加するには、それらのプロジェクトに依存するすべてのプロジェクトについて次の手順を実行する必要があります。
EJB プロジェクトとユーティリティ プロジェクトには、Web サービス プロジェクトや動的 Web プロジェクトから使用するコードが含まれています。一般的な選択肢としては、EJB プロジェクトとユーティリティ プロジェクトを、EAR 内のすべてのプロジェクトで利用できるようにすることが考えられます。この場合、実際的な面では以下を意味します。
しかし、プロジェクト依存関係が正しくコンフィグレーションされていないと、ユーティリティ プロジェクトと EJB プロジェクトをビルド時に利用することはできません。
ユーティリティ プロジェクトと EJB プロジェクトを EAR 内のすべてのプロジェクトで利用できるように指定するには、ユーティリティ プロジェクトや EJB プロジェクトを作成する際に、作成ウィザードの 3 番目の画面で [EAR '(EAR プロジェクト名)' 内のすべての Web プロジェクトにこのプロジェクトへの依存関係を追加します] チェック ボックスをチェックするのがもっとも単純な方法です。これはデフォルトの設定です。
ユーティリティ プロジェクトや EJB プロジェクトの作成時にプロジェクト依存関係を設定しなかった場合でも、これらのプロジェクトを EAR 内の Web サービス プロジェクトや動的 Web プロジェクトから利用できるようにすることは可能です。その場合は、Web プロジェクトごとに次の手順を実行します。
        
    なお、[EJB クライアント JAR を持つ EJB JAR を参照します。] ボックスは、Workshop プロジェクトには影響しません。
ユーティリティ プロジェクトや EJB プロジェクトは、相互に依存させることもできます。そのように設定するには、次の手順に従います。
   
追加する各プロジェクトの名前の横にあるボックスをチェックします。[OK] をクリックすると、選択したユーティリティ プロジェクトまたは EJB プロジェクトが、現在のユーティリティ プロジェクトまたは EJB プロジェクトに追加されます。
なお、[EJB クライアント JAR を持つ EJB JAR を参照します。] ボックスは、Workshop プロジェクトには影響しません。
EJB プロジェクトやユーティリティ プロジェクトの間の依存関係が循環しないよう注意してください。