JDeveloperプロジェクトは、.jpr
ファイルあるいはディレクトリから直接ファイル・リストを制御します。
ディレクトリから直接その内容を制御するプロジェクトは、動的プロジェクトと呼ばれることがあります。動的プロジェクトは、ソースパスおよびHTMLルート・ディレクトリをスキャンし、ディレクトリ下のすべてのファイルの場所を特定することにより、含まれるファイル(子)を判断します。
標準プロジェクトは、.jpr
ファイル内のファイルのリストを管理します。このリストは、ファイルがプロジェクトに追加されるか、またはプロジェクトから削除されると更新されます。.jpr
ファイル自体は、プロジェクトの次回の保存時に更新されます。
ただし、アクティブなマルチユーザー開発環境では、各開発者によるクラスの追加、移動または削除は問題を引き起こす可能性があるため、この動作は望ましくありません。共有 .jpr
ファイルがソース・コントロールされていない場合、各開発者のそれぞれのコピーはすぐに最新のものではなくなります。.jpr
ファイルがソース・コントロールされている場合は、このファイルがボトルネックとなり、またマージのソースの競合が発生します。
動的プロジェクトには、.jpr
ファイル内のファイルのリストは格納されません。かわりに、このプロジェクトは、開かれるとソースパスおよびHTMLルート・ディレクトリをスキャンし、子がどれであるかを判断します。プロジェクトの子の表示は、必要時に「表示」->「リフレッシュ」を選択してもリフレッシュできます。.jpr
ファイルに対する多数の変更元を排除することにより、動的プロジェクトは共有開発環境で特に役立ちます。
また、動的プロジェクトを使用すると、JDeveloperに既存のコードを簡単にインポートできます。コードをプロジェクトに移植する標準のインポート手順を実行するかわりに、動的プロジェクトを作成し、プロジェクトのソースパスとHTMLルートに既存のソース・コードを指定するだけで済みます。