JDK および JRE のファイル構造

JDK ツール

このドキュメントでは、JDK に含まれるディレクトリとファイルの概要について説明します。このページは、JRE のファイル構造のリファレンスとしても使用できます。JRE のファイル構造を理解するには、このページに掲載されている JDK の jre ディレクトリの説明を参照するだけで十分です。JRE のファイル構造は、JDK の jre ディレクトリのファイル構造と同一です。

開発用ファイルとディレクトリ

ここでは、Java プラットフォーム用のアプリケーション開発に必要なファイルとディレクトリについて説明します。開発に必要ないファイルには、デモ、Java ソースコード、C のヘッダファイルなどがあります。これらについては、このあとの「その他のファイルとディレクトリ」で説明します。次の図は、もっとも重要なディレクトリを示しています。

              jdk1.5.0
       ___________|_________________
      |           |                 |
     bin         lib               jre
      |           |         ________|__________
    java*     tools.jar    |                   |        
    javac*    dt.jar      bin                 lib                
    javap*                 |       ________ ___|___ _________ ________ _______       
    javah*               java*    |        |       |         |        |       |
    javadoc*                    rt.jar    ext   security   sparc    applet  fonts
                            charsets.jar   |              /     \
                                      localedata.jar  server  client
                                                                
    

JDK ソフトウェアは /jdk1.5.0 にインストールされているものとします。 以下に、いくつかの重要なディレクトリについて説明します。

/jdk1.5.0
JDK ソフトウェアがインストールされるルートディレクトリです。著作権、ライセンス、README のファイルが入っています。また、Java 2 プラットフォームのソースコードのアーカイブである src.zip も入っています。

/jdk1.5.0/bin
Java 2 JDK に含まれるすべての開発ツールの実行ファイル用ディレクトリです。PATH 環境変数には、このディレクトリのエントリを含めなければなりません。開発ツールの詳細は、「JDK ツール」を参照してください。

/jdk1.5.0/lib
開発ツールによって使用されるファイル用のディレクトリです。JDK のツールとユーティリティをサポートする、コア以外のクラスのファイルである tools.jar が含まれます。また、このディレクトリには、BeanInfo ファイル群の DesignTime アーカイブである dt.jar も入っています。BeanInfo ファイルは、対話型開発環境 (IDE) に対して、Java コンポーネントを表示する方法や、開発者がコンポーネントをアプリケーションに合わせてカスタマイズする方法を通知するためのものです。

/jdk1.5.0/jre
JDK 開発ツールによって使用される Java Runtime Environment のルートディレクトリです。Runtime Environment は Java 2 プラットフォームの実装です。これは、java.home システムプロパティから参照されるディレクトリです。

/jdk1.5.0/jre/bin
Java プラットフォームが使用するツールとライブラリ用の、実行ファイルのディレクトリです。含まれている実行ファイルは /jdk1.5.0/bin 内のファイルと同じです。JDK ソフトウェアのバージョン 1.1 に付属していた jre ツールに代わって、java 起動ツールが、アプリケーション起動ツールとして機能します。このディレクトリは、PATH 環境変数に含める必要がありません。

/jdk1.5.0/jre/lib
Java Runtime Environment が使用するコードライブラリ、プロパティ設定、およびリソースファイルのディレクトリです。たとえば、次のファイルが含まれます。
このあと説明する ext サブディレクトリのほかにも、ここでは説明しないリソースサブディレクトリがいくつか含まれています。

/jdk1.5.0/jre/lib/ext
Java プラットフォームに対する拡張機能のデフォルトのインストール先ディレクトリです。たとえば JavaHelp の JAR ファイルをインストールすると、このディレクトリに置かれます。
/jdk1.5.0/jre/lib/security
セキュリティ管理に使用されるファイルが入っています。これには、セキュリティポリシー (.java.policy) やセキュリティプロパティ (java.security) のファイルがあります。

/jdk1.5.0/jre/lib/sparc
Solaris 版の Java プラットフォームが使用する .so (共用オブジェクト) ファイルが含まれています。

/jdk1.5.0/jre/lib/sparc/client
Java HotSpotTM テクノロジを使って実装される Java HotSpot Client 仮想マシンが使用する .so ファイルが含まれています。これはデフォルトの VM です。

/jdk1.5.0/jre/lib/sparc/server
Java HotSpot Server 仮想マシンが使用する .so ファイルが含まれています。

/jdk1.5.0/jre/lib/applet
アプレットのサポートクラスの入った JAR ファイルは、lib/applet/ ディレクトリに配置できます。このようにすると、アプレットのクラスがアプレットクラスローダによってローカルファイルシステムから事前ロードされるため、大規模なアプレットの起動時間を短縮できます。また、ネット経由でダウンロードした場合と同様の保護が提供されます。

/jdk1.5.0/jre/lib/fonts
プラットフォームが使用するフォントファイルです。

その他のファイルとディレクトリ

ここでは、デモ、Java ソースコード、および C ヘッダファイルのディレクトリ構造について説明します。ディレクトリ構造は次のとおりです。

                            jdk1.5.0
                     ___________|__________ _________
                    |           |          |         |
                  demo       include    src.zip     man
                 ___|___ _________ __________ ________
                |       |         |          |        |
              applets  jfc       jpda     plugin     jni
           

上記のファイルとディレクトリについて説明します。

/jdk1.5.0/src.zip
Java 2 プラットフォームのソースコードを含むアーカイブです。

/jdk1.5.0/demo
ソースコード付きのサンプルファイルです。Java プラットフォーム用のプログラミングの方法を示しています。

/jdk1.5.0/demo/applets
Web ページ上で使用可能なアプレットです。

/jdk1.5.0/demo/jfc
Java 2DTM および JFC/Swing コンポーネントの使用例です。

/jdk1.5.0/demo/jpda
Java Platform Debugging Architecture の使用例です。javadt および jdb ユーティリティのソースコードも含まれています。

/jdk1.5.0/demo/plugin
Java Plug-in 製品で使用するデモです。

/jdk1.5.0/demo/jni
Java 2 プラットフォームから poll(2) 機能へのアクセス方法を示す、サンプルクラスと C コードです。

/jdk1.5.0/include
Java Native Interface (JNI) および Java Virtual Machine Debugger Interface (JVMDI) を使用するネイティブコードのプログラミングをサポートする、C 言語のヘッダファイルです。

/jdk1.5.0/man
troff により書式設定された、Java 2 JDK ツールのマニュアルページが含まれています。

Copyright © 2004 Sun Microsystems, Inc.All Rights Reserved.

Sun
Java ソフトウェア