この章では、JDKのディレクトリと、それらのディレクトリに含まれているファイルを紹介します。 JREのファイル構造はJDKのjreディレクトリの構造と同一です。
この章では次のトピックについて説明します。
Javaプラットフォーム用のプログラミング方法を示すデモおよびサンプルは、「Javaのダウンロード」から別途ダウンロードできます。
ここでは、Javaプラットフォーム用のアプリケーション開発に必要な、もっとも重要なファイルとディレクトリについて説明します。 必要ないディレクトリには、Javaソース・コードおよびCヘッダー・ファイルが含まれている場合があります。 「その他のファイルとディレクトリ」を参照してください。
jdk-1.8
bin
java*
javac*
javap*
javah*
javadoc*
lib
tools.jar
dt.jar
jre
bin
java*
lib
applet
ext
jfxrt.jar
localdata.jar
fonts
security
sparc
server
client
rt.jar
charsets.jar
JDKソフトウェアが/jdk-1.8にインストールされている場合、最も重要なディレクトリの一部を次に示します:
JDKソフトウェアがインストールされるルート・ディレクトリです。 著作権、ライセンス、READMEのファイルが入っています。 また、Javaプラットフォームのソース・コードのアーカイブである src.zipも入っています。
JDKに含まれるすべての開発ツールの実行ファイル用ディレクトリです。 PATH環境変数には、このディレクトリのエントリを含めるべきです。
開発ツールによって使用されるファイル用のディレクトリです。 JDKのツールとユーティリティをサポートするためにコア以外のクラスが含まれる、 tools.jarが含まれます。 また、BeanInfoファイル(対話型開発環境(IDE)に対して、Javaコンポーネントを表示する方法や、開発者がそれらをアプリケーションに合わせてカスタマイズする方法を通知する)のDesignTimeアーカイブdt.jarも入っています。
JDK開発ツールで使用されるJava Runtime Environment (JRE)のルート・ディレクトリです。 Runtime EnvironmentはJavaプラットフォームの実装です。 これは、java.homeシステム・プロパティから参照されるディレクトリです。
Javaプラットフォームが使用するツールとライブラリ用の、実行ファイルのディレクトリです。 実行可能ファイルは、/jdk-1.8/binのファイルと同じです。 javaランチャ・ツールは、アプリケーション・ランチャとして機能します。 このディレクトリは、PATH環境変数に存在する必要はありません。
JREで使用されるコード・ライブラリ、プロパティ設定およびリソース・ファイルのディレクトリです。 たとえば、rt.jarには、ブートストラップ・クラス(JavaプラットフォームのコアAPIを構成するランタイム・クラス)が含まれ、charsets.jarには、文字変換クラスが含まれています。 extサブディレクトリの他にも、ここでは説明しない追加のリソース・サブディレクトリがいくつかあります。
Javaプラットフォームに対する拡張機能のデフォルトのインストール先ディレクトリです。 たとえば、JavaHelpのJARファイルをインストールすると、このディレクトリに置かれます。 このディレクトリには、JavaFXランタイム・ライブラリを含むjfxrt.jarファイルと、java.textおよびjava.utilパッケージのロケール・データを含むlocaledata.jarファイルが含まれています。 「拡張メカニズム」を参照してください。
セキュリティ管理に使用されるファイルが入っています。 これらには、セキュリティ・ポリシーjava.policyやセキュリティ・プロパティjava.securityのファイルが含まれます。
アプレットのサポート・クラスが含まれるJARファイルは、lib/applet/ディレクトリに配置できます。 このようにすると、アプレットのクラスがアプレット・クラス・ローダーによってローカル・ファイル・システムから事前ロードされるため、大規模なアプレットの起動時間を短縮できます。また、インターネット経由でダウンロードした場合と同様の保護が提供されます。
プラットフォームで使用されるフォント・ファイルです。
ここでは、Javaソース・コード、Cヘッダー・ファイルおよびその他のディレクトリとファイルのディレクトリ構造について説明します。
jdk-1.8
include
man
src.zip
Javaプラットフォームのソース・コードを含むアーカイブです。
次のような様々なライブラリでのネイティブ・コード・プログラミングをサポートするC言語ヘッダー・ファイル: