# JDK および JRE のファイル構造 | JDK ツール

このページでは、JDK のディレクトリと、それらのディレクトリに含まれているファイルについて概説します。JRE のファイル構造は、JDK の `jre` ディレクトリのファイル構造と同一です。

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

ここでは、Java プラットフォーム用のアプリケーション開発に必要な、もっとも重要なファイルとディレクトリについて説明します。

開発に必要ないディレクトリには、デモ、Java ソースコード、C のヘッダーファイルなどがあります。これらについては、「その他のファイルとディレクトリ」の節で説明します。

              jdk1.6.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.6.0` にインストールされているものとします。 次に、いくつかの重要なディレクトリについて説明します。

> > `/jdk1.6.0`
> >   JDK ソフトウェアがインストールされるルートディレクトリです。著作権、ライセンス、README のファイルが入っています。また、Java プラットフォームのソースコードのアーカイブである `src.zip` も入っています。
> > `/jdk1.6.0/bin`
> >   JDK に含まれるすべての開発ツールの実行ファイル用ディレクトリです。PATH 環境変数には、このディレクトリのエントリを含めなければなりません。開発ツールの詳細は、「JDK ツール」を参照してください。
> > `/jdk1.6.0/lib`
> >   開発ツールによって使用されるファイル用のディレクトリです。JDK のツールとユーティリティーをサポートする、コア以外のクラスのファイルである `tools.jar` が含まれます。また、このディレクトリには、BeanInfo ファイル群の DesignTime アーカイブである `dt.jar` も入っています。 BeanInfo ファイルは、対話型開発環境 (IDE) に対して、Java コンポーネントを表示する方法や、開発者がコンポーネントをアプリケーションに合わせてカスタマイズする方法を通知するためのものです。
> > `/jdk1.6.0/jre`
> >   JDK 開発ツールによって使用される Java Runtime Environment のルートディレクトリです。Runtime Environment は Java プラットフォームの実装です。これは、`java.home` システムプロパティーから参照されるディレクトリです。
> > `/jdk1.6.0/jre/bin`
> >   Java プラットフォームが使用するツールとライブラリ用の、実行ファイルのディレクトリです。含まれている実行ファイルは `/jdk1.6.0/bin` 内のファイルと同じです。JDK のバージョン 1.1 に付属していた jre ツールに代わって、java 起動ツールが、アプリケーション起動ツールとして機能します。このディレクトリは、PATH 環境変数に含める必要がありません。
> > `/jdk1.6.0/jre/lib`
> >   Java Runtime Environment が使用するコードライブラリ、プロパティー設定、およびリソースファイルのディレクトリです。例を示します。
> > - `rt.jar` -- ブートストラップクラス (Java プラットフォームのコア API を構成するランタイムクラス)
> > - `charsets.jar` -- 文字変換クラス
> >   このあと説明する `ext` サブディレクトリのほかにも、ここでは説明しないリソースサブディレクトリがいくつか含まれています。
> > `/jdk1.6.0/jre/lib/ext`
> >   Java プラットフォームに対する拡張機能のデフォルトのインストール先ディレクトリです。たとえば JavaHelp の JAR ファイルをインストールすると、このディレクトリに置かれます。
> > - `localedata.jar` -- `java.text` および `java.util` 用のロケールデータ
> > `/jdk1.6.0/jre/lib/security`
> >   セキュリティー管理に使用されるファイルが入っています。これには、セキュリティーポリシー (`.java.policy`) やセキュリティープロパティー (`java.security`) のファイルがあります。
> > `/jdk1.6.0/jre/lib/sparc`
> >   Solaris 版の Java プラットフォームが使用する `.so` (共用オブジェクト) ファイルが含まれています。
> > `/jdk1.6.0/jre/lib/sparc/client`
> >   Java HotSpotTM テクノロジを使って実装される Java HotSpotTM Client 仮想マシンが使用する `.so` ファイルが含まれています。これはデフォルトの VM です。
> > `/jdk1.6.0/jre/lib/sparc/server`
> >   Java HotSpotTM Server 仮想マシンが使用する `.so` ファイルが含まれています。
> > `/jdk1.6.0/jre/lib/applet`
> >   アプレットのサポートクラスの入った JAR ファイルは、`lib/applet/` ディレクトリに配置できます。このようにすると、アプレットのクラスがアプレットクラスローダによってローカルファイルシステムから事前ロードされるため、大規模なアプレットの起動時間を短縮できます。 また、ネット経由でダウンロードした場合と同様の保護が提供されます。
> > `/jdk1.6.0/jre/lib/fonts`
> >   プラットフォームが使用するフォントファイルです。

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

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

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

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

> > `/jdk1.6.0/src.zip`
> >   Java プラットフォームのソースコードを含むアーカイブです。
> > `/jdk1.6.0/demo`
> >   ソースコード付きのサンプルファイルです。 Java プラットフォーム用のプログラミングの方法を示しています。
> > `/jdk1.6.0/demo/applets`
> >   Web ページ上で使用可能なアプレットです。
> > `/jdk1.6.0/demo/jfc`
> >   Java 2DTM および JFC/Swing コンポーネントの使用例です。
> > `/jdk1.6.0/demo/jpda`
> >   Java Platform Debugging Architecture の使用例です。javadt および jdb ユーティリティーのソースコードも含まれています。
> > `/jdk1.6.0/demo/plugin`
> >   Java Plug-in 製品で使用するデモです。
> > `/jdk1.6.0/demo/jni`
> >   Java プラットフォームから poll(2) 機能へのアクセス方法を示す、サンプルクラスと C コードです。
> > `/jdk1.6.0/include`
> >   Java Native Interface (JNI) および Java Virtual Machine Debugger Interface (JVMDI) を使用するネイティブコードのプログラミングをサポートする、C 言語のヘッダーファイルです。
> > `/jdk1.6.0/man`
> >   JDK ツールのマニュアルページが含まれています。

Copyright © 2004-2006 Sun Microsystems, Inc. All Rights Reserved. | Java Software