システムプロパティとは、Javaの動作環境に関する情報です。JVM(Java仮想マシン)の情報を取得して確認したり、ユーザがJava環境を設定できます。この記事では、システムプロパティの一覧と使い方をご紹介します。
システムプロパティは、Java仮想マシンが環境に合わせて自動的に設定されるものと、ユーザが任意に設定するものとがある。
ユーザがシステムプロパティを設定するには、javaコマンドに-D
オプションを指定して実行する。
java -Dexample.home="/home" Example.class
Javaアプリケーションでシステムプロパティを設定するには、java.lang.SystemクラスのsetPropertyメソッドを使う。
public class Example {
public static void main(String[] args) {
System.setProperty("example.home", "/home");
System.out.println(System.getProperty("example.home"));
}
}
設定されたシステムプロパティは、java.lang.SystemクラスのgetPropertyメソッドで取得できる。
public class Example {
public static void main(String[] args) {
// Java Runtime Environmentのバージョン
String version = System.getProperty("java.version");
System.out.println(version);
}
}
システムプロパティの一覧を取得するには、java.lang.SystemクラスのgetPropertiesメソッドを使う。
import java.util.Properties;
public class Example {
public static void main(String[] args) {
// システムプロパティ一覧の取得
Properties properties = System.getProperties();
properties.list(System.out);
}
}
キー | 説明 |
---|---|
java.version | Java実行環境(JRE: Java Runtime Environment)のバージョン |
java.vendor | JREのベンダ |
java.vendor.url | JavaベンダのURL |
java.home | Javaのインストールディレクトリ |
java.vm.specification.version | Java仮想マシン(JVM: Java Virtual Machine)の仕様バージョン |
java.vm.specification.vendor | JVMの仕様のベンダ |
java.vm.specification.name | JVMの仕様名 |
java.vm.version | JVMの実装バージョン |
java.vm.vendor | JVMの実装のベンダ |
java.vm.name | JVMの実装名 |
java.specification.version | JREの仕様バージョン |
java.specification.vendor | JREの仕様のベンダ |
java.specification.name | JREの仕様名 |
java.class.version | Javaのクラスの形式のバージョン |
java.class.path | Javaクラスパス |
java.library.path | ライブラリのロード時に検索するパスのリスト |
java.io.tmpdir | デフォルト一時ファイルのパス |
java.compiler | 使用するJIT (Just in Time)コンパイラの名前 |
java.ext.dirs | 拡張ディレクトリのパス |
os.name | オペレーティングシステム名 |
os.arch | オペレーティングシステムのアーキテクチャ |
os.version | オペレーティングシステムのバージョン |
file.separator | ファイル区切り文字 |
path.separator | パス区切り文字 |
line.separator | 行区切り文字 |
user.name | ユーザのアカウント名 |
user.home | ユーザのホームディレクトリ |
user.dir | ユーザの現在の作業ディレクトリ |