プロジェクトの依存性は、コンパイル時に非常に重要となるプロジェクト間の関係を表します。一方、プロファイルの依存性は、デプロイ時にアクティブになるデプロイメント・プロファイル間の関係を表します。
他のプロジェクトで生成された実行可能なコードを使用するプロジェクトは、コードを生成したプロジェクトに依存します。他のプロジェクトで生成されたコードを使用するプロジェクトを、そのプロジェクトのダウンストリームといいます。コードを生成するプロジェクトを、コードを使用するプロジェクトのアップストリームといいます。
線形関係を例にとり、プロジェクトAがプロジェクトBに、プロジェクトBがプロジェクトCに依存すると仮定した場合、次のようになります。
アップストリーム・プロジェクトになんらかの変更があった場合、ダウンストリーム・プロジェクトが影響を受けます。ダウンストリーム・プロジェクトがコンパイルされた場合、そのダウンストリーム・プロジェクトは、アップストリーム・プロジェクトの最新のバージョンへアクセスできる必要があります。
プロジェクトの依存性を設定する際、これらの関係を設定します。ダウンストリームとして定義されたプロジェクトを次回コンパイルするときには、そのアップストリーム・プロジェクトが確認されます。ビルドされていないアップストリーム・プロジェクト、または最後のビルド以降に変更されていないアップストリーム・プロジェクトは、これらに依存するダウンストリーム・プロジェクトがコンパイルされる前に、まず指定した順で再ビルドされます。
プロジェクトは、同じアプリケーション内の他の任意の数のプロジェクト、またはこれらのプロジェクトのデプロイメント・プロファイルに依存できます。プロジェクトの依存性はコンパイル時の依存性であるため、他のプロジェクトのダウンストリームであるプロジェクトがコンパイルされると、これらの依存性が呼び出されます。
プロジェクトは、任意の数のプロジェクトに依存する場合があります。
1つのプロジェクトが別の1つのプロジェクトに依存するというのが、最も単純な例です。プロジェクトAがプロジェクトBに依存する場合、ダウンストリーム・プロジェクト(プロジェクトA)がコンパイルされると、依存性により、必要であればアップストリーム・プロジェクト(プロジェクトB)もコンパイルされます。つまり、プロジェクトAの最後のコンパイル以降にプロジェクトBになんらかの変更があると、プロジェクトBもコンパイルされます。
プロジェクトのプロジェクトへのコンパイル時の依存性は、デプロイ時の動作にも影響を与えます。プロジェクトAのプロファイルをデプロイすると、プロジェクトの依存性により、JDeveloperではプロジェクトAのプロファイルに指定された内容と、プロジェクトBの完全な内容をすべてデプロイします。これは、プロジェクトBにデプロイメント・プロファイルがあるかどうかにかかわらず当てはまります。プロファイルがある場合、その指示は無視されます。ダウンストリーム・コンポーネントのみに対する指示以外のデプロイメントの指示に従い、2つのプロジェクトが1つのプロジェクトとして扱われます。
JDeveloperでプロジェクトBのデプロイメント・プロファイルを考慮するには、プロジェクトAをプロジェクトBのプロファイルに依存させる必要があります。
プロジェクトは、他のプロジェクトではなく、そのプロファイルに依存する場合があります。
プロジェクトAがプロジェクトBのデプロイメント・プロファイルに依存する場合、プロジェクトAをコンパイルすると、依存性により、プロジェクトBのプロファイルがまずデプロイされます。
プロジェクトのプロファイルへのコンパイル時の依存性は、デプロイ時の動作にも影響を与えます。プロジェクトAのプロファイルをデプロイすると、この依存性により、JDeveloperではプロジェクトAとプロジェクトBの両方のプロファイルにリストされている内容を、すべてデプロイします。それぞれのデプロイメントの指示に従い、2つのプロジェクトが1つのプロジェクトとして扱われます。
Copyright © 1997, 2006, Oracle. All rights reserved.