Javaでは、クラスを編成するメカニズムとしてパッケージを使用します。通常、関連するクラスおよびインタフェースはパッケージにグループ化され、関連するパッケージ自体もグループ化されます。
Javaでは、ソース・ファイルのディレクトリとパッケージの間に特定の関連は必要ではありませんが、JDeveloperでは、ソース・ファイルが、そのファイル内のクラスのパッケージと一致するディレクトリ構造に置かれることを前提にしています。ディレクトリ構造がパッケージ構造と一致しない場合、JDeveloperは、デバッグまたはソースを参照する際に適切なソース・ファイルを検索できないことがあります。