Java 2 SDK および Runtime Environment ファイル構造 | 
SDK ツール | 
このドキュメントでは、Java 2 SDK, Standard Edition に含まれるディレクトリとファイルの概要について説明します。このページは、Java 2 Runtime Environment のファイル構造のリファレンスとしても使用できます。Runtime Environment のファイル構造を理解するには、このページに掲載されている SDK の jre ディレクトリに関する説明を参照してください。Java 2 Runtime Environment のファイル構造は、SDK の jre ディレクトリのファイル構造と同一です。
ここでは、Java プラットフォーム用のアプリケーション開発に必要なファイルとディレクトリについて説明します。開発に必要ないファイルには、デモ、ソースコード、C のヘッダファイルなどがあります。これらについては、次の「その他のファイルとディレクトリ」で説明します。次の図は、もっとも重要なディレクトリを示します。
                 jdk1.3
        ___________|____________________
       |           |                    |
      bin         lib                  jre
       |           |          __________|_____________________
   java.exe    tools.jar     |                                |        
   javac.exe   dt.jar       bin                              lib                
   javap.exe            _____|____ __________         ________|_______ ________         
   javah.exe           |          |          |       |        |       |        |
   javadoc.exe     java.exe    classic    hotspot  rt.jar    ext  security  applet
                   java.dll       |          |     i18n.jar                     
                   awt.dll     jvm.dll    jvm.dll              
SDK ソフトウェアは
c:\jdk1.3にインストールされているものとします。 以下に、いくつかの重要なディレクトリについて説明します。
c:\jdk1.3- SDK ソフトウェアがインストールされるルートディレクトリです。著作権、ライセンス、README ファイルが含まれます。また、Java 2 プラットフォームのソースコードのアーカイブである src.jar も含まれています。
 
c:\jdk1.3\bin- Java Development Kit (JDK) に含まれる開発ツールの実行ファイル用ディレクトリです。PATH 環境変数には、このディレクトリのエントリを含めなければなりません。ツールの詳細は、「Java 2 SDK ツールとユーティリティ」を参照してください。
 
c:\jdk1.3\lib- 開発ツールが使用するファイル用のディレクトリです。SDK のツールとユーティリティをサポートする、コア以外のクラスのファイルである
 tools.jarが含まれます。また、このディレクトリには、BeanInfo ファイル群の DesignTime アーカイブ、dt.jarも含まれます。 BeanInfo ファイルは、対話型開発環境 (IDE) に対し、Java コンポーネントの表示方法や、開発者が環境をアプリケーションに合わせてカスタマイズする方法を通知するためのものです。
c:\jdk1.3\jre- SDK 開発ツールが使用する Java Runtime Environment のルートディレクトリです。Runtime Environment は Java 2 プラットフォームの実装です。これは、java.home システム・プロパティにより指定されるディレクトリです。
 
c:\jdk1.3\jre\bin- Java プラットフォームが使用するツールとライブラリ用の、実行ファイルと DLL のディレクトリです。含まれている実行ファイルは
 /jdk1.3/bin内のファイルと同じです。SDK ソフトウェアのバージョン 1.1 に付属していた jre ツールに代わって、java 起動ツールがアプリケーション起動ツールとして機能します。このディレクトリは、PATH 環境変数内に指定する必要はありません。
c:\jdk1.3\jre\bin\classic- Java 2 Classic Virtual Machine が使用する DLL ファイルが入っています。これらのファイルは、Java 2 SDK にのみ含まれます。Java 2 Runtime Environment には含まれません。
 
c:\jdk1.3\jre\bin\hotspot- Java HotSpotTM テクノロジを使って実装される Java HotSpot Client Virtual Machine が使用する DLL ファイルが格納されます。
 
c:\jdk1.3\jre\lib- Java Runtime Environment が使用するコードライブラリ、プロパティ設定、リソースファイルのディレクトリです。次のファイルが含まれます。
 
rt.jar-- ブートストラップクラス (Java プラットフォームのコア API に準拠するランタイムクラス)- i18n.jar -- 文字変換クラスおよび、国際化と地域対応に関するその他のファイル
 
extサブディレクトリ (次で説明) の他に、ここで説明されていないリソースサブディレクトリがいくつかあります。
c:\jdk1.3\jre\lib\ext- Java プラットフォーム拡張機能のデフォルトのインストール先ディレクトリです。たとえば JavaHelp の jar ファイルをインストールすると、このディレクトリに置かれます。
 
c:\jdk1.3\jre\lib\security- セキュリティ管理に使用されるファイルが格納されます。これには、セキュリティポリシー (
 java.policy) およびセキュリティプロパティ (java.security) ファイルがあります。c:\jdk1.3\jre\lib\applet- アプレットのサポートクラスを含む jar ファイルは、lib/applet/ ディレクトリに配置できます。こうすると、アプレットのクラスを、アプレットクラスローダを使って、ローカルファイルシステムからプリロードでき、かつ、ネット上でダウンロードした場合と同様に保護されることから、大型のアプレットにかかる起動時間を短縮できます。
 
ここでは、デモ、Java ソースコード、C のヘッダファイルについて説明します。ディレクトリ構造は次のとおりです。
                          jdk1.3
                 ___________|__________ __________
                |           |          |          |
              demo      include  include-old   src.jar
             ___|___ _________ __________
            |       |         |          |
          applets  jfc       jpda      sound
       
上に示したディレクトリについて説明します。
c:\jdk1.3\src.jar- Java 2 プラットフォームのソースコードを含むアーカイブです。
 
c:\jdk1.3\demo- ソースコード付きのサンプルファイルです。 Java プラットフォーム用のプログラミング方法を示します。
 
c:\jdk1.3\demo\applets- Web ページで使用可能なアプレットです。
 
c:\jdk1.3\demo\jfc- Java 2DTM と JFC\Swing コンポーネントを使ったサンプルです。
 
c:\jdk1.3\demo\jpda- Java Platform Debugging Architecture を使ったサンプルです。javadt および jdb ユーティリティのソースコードが含まれています。
 
c:\jdk1.3\demo\sound- Java Sound のデモおよびそのソースコードが含まれます。
 
c:\jdk1.3\include- Java Native Interface と Java Virtual Machine Debugger Interface (JVMDI) を使ってネイティブコードのプログラミングをサポートする、C 言語のヘッダファイルです。
 
c:\jdk1.3\include-old- 従来のインタフェースを使ったネイティブコードのプログラミングをサポートする、ヘッダファイルです。これらのヘッダファイルは、旧バージョンとの互換性のためだけに提供されています。これらのインタフェースの使用は推奨されておらず、サポート対象外で、すべての Java Virtual Machine で利用できるわけではありません。