Javaの-Dオプションとは?システムプロパティの設定・取得方法
掲載日:
更新日:
INFORMATION > Javaの-Dオプションとは?システムプロパティの設定・取得方法
結論:-Dname=valueは、Java VMの起動時にシステムプロパティを設定するための標準オプションです。アプリケーション側ではSystem.getPropertyで参照できます。
この記事の対象と位置付け:EclipseのVM引数やTomcatの起動オプションに現れる-Dの意味を、簡単な実行例から理解したい方向けの記事です。
2026年時点の注意:構文は現在のJavaでも有効ですが、パスワードやトークンをコマンドラインへ直接渡すと、プロセス一覧やログに露出する可能性があります。機密情報には専用の秘密管理方法を使ってください。
概要
Java起動時に「java -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager」と指定したり、Eclipseで「実行環境⇒VM引数」に以下の様に「-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager」と指定することがあると思います。
この「-DXXXXXX」を付けるとどうなるか説明したいと思います。
目次
1. Dオプション(-D)とは
Dオプション(-D)とはJavaのシステムプロパティ値となります。以下のJavaのオラクルのサイトに記載されています。
https://docs.oracle.com/javase/jp/1.3/tooldocs/solaris/java.html#standard
システムプロパティ値を設定するとどうなるのか実際に動かしてみたいと思います。
1-1. Dオプション(-D)を指定して動かすとどうなるか
EclipseにDオプション(-D)を指定して動かしていきたいと思います。具体的なオプションとしては「-Dtest=testoption」とします。下図の様に設定します。
下図の様な簡単なmainクラスを作成します。
このmainクラスを実行すると以下の様に「test」を引数に「testoption」という値が取得できていることが分かります。
つまり、Javaの起動時にシステムプロパティ値を設定するとSystemクラスから値を取得できるようになります。
3. まとめ
Javaの起動時にDオプション(-D)を指定すると、Systemクラスから値を取得することが可能になります。環境ごとに異なる値を動的に設定したい場合などに使用されます。
最後までご覧いただきありがとうございました。



