このエントリーをはてなブックマークに追加


JDK,JRE,JavaのバージョンなどJavaに関する情報を取得するサンプル

本資料およびサンプルコードは、JavaやJREのバージョン、ベンダー名称などを
取得するサンプルコードになります。

関連記事

Javaに関する情報を取得する

以下の情報を取得するサンプルコードおよび実行例を以下に記します。

キー値の意味
java.class.pathJavaクラスパス
java.class.versionJavaクラスの形式のバージョン
java.compilerJITコンパイラ名称
java.homeJavaインストールディレクトリ
java.io.tmpdirデフォルトテンポラリファイルパス
java.library.pathライブラリのロード時に検索するパスのリスト
java.specification.nameJREの仕様名称
java.specification.vendorJRE仕様のベンダー
java.specification.versionJRE仕様バージョン
java.vendor.urlJavaベンダーのURL
java.vendorJREのベンダー名
java.versionJREのバージョン
java.vm.nameJava仮想マシン実装名
java.vm.specification.nameJava仮想マシンの仕様名称
java.vm.specification.vendorJava仮想マシン仕様のベンダー名
java.vm.specification.versionJava仮想マシン仕様バージョン
java.vm.vendorJava仮想マシン実装のベンダー名
java.vm.versionJava仮想マシン実装バージョン

サンプルコード

上記の表のキーに対する値を取得するサンプルコードおよび実行例を記します。

import java.util.*;

public class JavaProp {
	public static void main(String[] args) {
		HashMap<String, String> map = new HashMap<String, String>();
		map.put("java.class.path","Javaクラスパス");
		map.put("java.class.version","Javaクラスの形式のバージョン");
		map.put("java.compiler","JITコンパイラ名称");
		map.put("java.home","Javaインストールディレクトリ");
		map.put("java.io.tmpdir","デフォルトテンポラリファイルパス");
		map.put("java.library.path","ライブラリのロード時に検索するパスのリスト");
		map.put("java.specification.name","JREの仕様名称");
		map.put("java.specification.vendor","JRE仕様のベンダー");
		map.put("java.specification.version","JRE仕様バージョン");
		map.put("java.vendor.url","JavaベンダーのURL");
		map.put("java.vendor","JREのベンダー名");
		map.put("java.version","JREのバージョン");
		map.put("java.vm.name","Java仮想マシン実装名");
		map.put("java.vm.specification.name","Java仮想マシンの仕様名称");
		map.put("java.vm.specification.vendor","Java仮想マシン仕様のベンダー名");
		map.put("java.vm.specification.version","Java仮想マシン仕様バージョン");
		map.put("java.vm.vendor","Java仮想マシン実装のベンダー名");
		map.put("java.vm.version","Java仮想マシン実装バージョン");

		Set<Map.Entry<String, String>> entry = map.entrySet();
		Iterator<Map.Entry<String, String>> iterator = entry.iterator();
		while(iterator.hasNext()) {
			Map.Entry<String, String> item = iterator.next();
			String property = System.getProperty(item.getKey());
			System.out.println(
				item.getKey() +
				"(" + item.getValue() + ") : " +
				property
			);
		}
	}
}

実行結果

コンパイルして実行した時の出力です。

$ javac JavaProp.java 
$ java JavaProp 
java.io.tmpdir(デフォルトテンポラリファイルパス) : /tmp
java.specification.version(JRE仕様バージョン) : 9
java.version(JREのバージョン) : 9-internal
java.class.path(Javaクラスパス) : .
java.specification.vendor(JRE仕様のベンダー) : Oracle Corporation
java.vm.specification.name(Java仮想マシンの仕様名称) : Java Virtual Machine Specification
java.vm.vendor(Java仮想マシン実装のベンダー名) : Oracle Corporation
java.home(Javaインストールディレクトリ) : /usr/lib/jvm/java-9-openjdk-i386
java.library.path(ライブラリのロード時に検索するパスのリスト) : /usr/java/packages/lib/i386:/usr/lib/i386-linux-gnu/jni:/lib/i386-linux-gnu:/usr/lib/i386-linux-gnu:/usr/lib/jni:/lib:/usr/lib
java.specification.name(JREの仕様名称) : Java Platform API Specification
java.vendor.url(JavaベンダーのURL) : http://java.oracle.com/
java.vendor(JREのベンダー名) : Oracle Corporation
java.vm.specification.vendor(Java仮想マシン仕様のベンダー名) : Oracle Corporation
java.compiler(JITコンパイラ名称) : null
java.vm.version(Java仮想マシン実装バージョン) : 9-internal+0-2016-04-14-195526.buildd.src
java.vm.name(Java仮想マシン実装名) : OpenJDK Server VM
java.vm.specification.version(Java仮想マシン仕様バージョン) : 9
java.class.version(Javaクラスの形式のバージョン) : 53.0

以上、Javaに関する情報を取得するサンプルソースでした。


添付ファイル: fileJavaProp.java 364件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-06-10 (土) 11:17:22