Java™ 仮想マシンは、実行時にクラスを検索するために、Java クラスパスを使用します。また、Java のコマンドとツールも、クラスパスを使用してクラスの位置を判別します。 デフォルトのシステム・クラスパス、CLASSPATH 環境変数、および classpath コマンド・パラメーターはすべて、クラスを探すときにどのディレクトリーを検索するかを指定するために使用されます。
ロードされる拡張のクラスパスが java.ext.dirs プロパティーによって決定されます。詳しくは、Java の拡張機能をインストールするを参照してください。
デフォルトのブートストラップ・クラスパスはシステムによって定義されており、変更できません。 サーバーでは、IBM® Developer Kit for Java、および他のシステム・クラスに属するクラスをどこで検索するかを、デフォルトのブートストラップ・クラスパスによって指定します。
java.endorsed.dirs プロパティーは、JAR ファイルをブートストラップ・クラスパスに追加することによって、推奨されたバージョンの Java クラスをオーバーライドする標準的な方法です。Java の推奨される標準オーバーライド・メカニズム (英語) を参照してください。
これら以外のクラスをシステム上で検出するには、CLASSPATH 環境変数または classpath パラメーターを使用して、検索対象のクラスパスを指定します。 ツールやコマンドで classpath パラメーターを使用すると、CLASSPATH 環境変数で指定されている値は無効になります。
CLASSPATH 環境変数の設定には、「環境変数の処理 (WRKENVVAR)」コマンドを使用します。 WRKENVVAR の画面から、CLASSPATH 環境変数の追加や変更を行うことができます。 CLASSPATH 環境変数を追加する場合は「環境変数の追加 (ADDENVVAR)」コマンドを、CLASSPATH 環境変数を変更する場合は「環境変数の変更 (CHGENVVAR)」コマンドを使用します。
CLASSPATH 環境変数の値はパス名のリストであり、コロン (:) によって分けられています。 これは、特定のクラスを探すために検索されます。 パス名は、0 または複数の一連のディレクトリー名です。 これらのディレクトリー名の後には、ディレクトリーの名前、ZIP ファイル、または JAR ファイル (統合ファイル・システムで検索する) が続きます。 パス名のコンポーネントはスラッシュ (/) 文字によって分けられています。 ピリオド (.) を使用して、現行作業ディレクトリーを示します。
Qshell インタープリターで使用可能なエクスポート・ユーティリティーを使用すると、Qshell 環境で CLASSPATH 変数を設定できます。
これらのコマンドは、CLASSPATH 変数をユーザーの Qshell 環境に追加し、それを値 ".:/myclasses.zip:/Product/classes" に設定します。
export -s CLASSPATH=.:/myclasses.zip:/Product/classes
ADDENVVAR ENVVAR(CLASSPATH) VALUE(".:/myclasses.zip:/Product/classes")
J2SE は最初にブートストラップ・クラスパスを検索してから、次に拡張ディレクトリーを検索し、その後クラスパスを検索します。 上記の例のコードでの J2SE の検索順序は次のようになります。
Java のツールおよびコマンドの中には、パス名のリストを指定できるクラスパス・パラメーターを含むものがあります。パラメーターの構文は CLASSPATH 環境変数の構文と同じです。 以下のリストは、クラスパス・パラメーターを指定できるツールおよびコマンドの一部を示しています。
これらのコマンドの詳細については、Java コマンドおよびツールを参照してください。 これらのコマンドやツールで classpath パラメーターを使用すると、CLASSPATH 環境変数は無視されます。
CLASSPATH 環境変数をオーバーライドするには、java.class.path プロパティーを使用します。 他のプロパティーと同様に、java.class.path プロパティーを変更するには、SystemDefault.properties ファイルを使用します。 SystemDefault.properties ファイルの値は、CLASSPATH 環境変数をオーバーライドします。 SystemDefault.properties ファイルについては、SystemDefault.properties ファイルを参照してください。
さらに -Xbootclasspath オプションおよび java.endorsed.dirs プロパティーは、クラスの検索時にシステムがどのディレクトリーを検索するかに影響します。 -Xbootclasspath/a:path を使用すると、デフォルトのブートストラップ・クラスパスの後に path が付加され、/p:path と指定すると、デフォルトのブートストラップ・クラスパスの前に path が付加され、:path と指定すると、ブートストラップ・クラスパスは path によって置き換えられます。java.endorsed.dirs プロパティー用に指定されたディレクトリーに配置された JAR ファイルは、ブートストラップ・クラスパスの前に付加されます。
Java プログラムのランタイム環境を決定する方法については、Java システム・プロパティーを参照してください。
詳しくは、プログラムおよび CL コマンド API または統合ファイル・システムを参照してください。