Windowsシステム環境変数でJava-VMオプションを指定する方法

2018年8月10日

Java-VMの起動時に、様々なオプションが指定可能であるが、OSの環境変数でデフォルトを指定しておくことができる。以下はWindowsの場合の設定方法だが、Linux等の他のOSでも同様のことができるようだ。

以下はWindows7の場合だが、他のバージョンでも手順は同様だろう。

※厳重注意:これは一般ユーザ向けの設定であって、開発者はこの設定を行ってはいけない。例えば、この状態でEclipseなどのJava開発環境を動作させると、_JAVA_OPTIONSの設定が優先されてしまうようだ。したがって、eclipse.iniに-Xmx1024Mなどとの記述があっても、(以下の例では、_JAVA_OPTIONSに-Xmx256Mを指定しているが)256Mに制限されてしまい。メモリ不足に陥ってしまう。開発者向けのアプリは一般ユーザ用のアプリよりも、はるかにメモリ量を必要とする。

※2:後に調べたところ、_JAVA_OPTIONSではなく、JAVA_TOOL_OPTIONSを使うべきのようだ。ほぼ同じ意味と思えばよい。この件については、Javaの使用する環境変数に書いた。

コントロールパネルの「システム」を開く

この中の「システムの詳細設定」をクリックする。

環境変数設定を開く

「詳細」タブの中にある「環境変数設定」をクリックする。

システム環境変数を新規作成する

システム環境変数の「新規」ボタンをクリックする

_JAVA_OPTIONSを設定する

次のように、変数名を「_JAVA_OPTIONS」とする。最初の文字はアンダースコアで、大文字のJAVA、OPTIONSのあいだにアンダースコアが一つ入る。

ここでは最大ヒープメモリサイズを256Mに指定する例をあげている。これは、

-Xmx256M

という値になる。

ただし、この値としてはJava-VM用のオプションを空白で区切って記入することが可能で、つまり複数のオプションを同時に指定することができる。

いったんログアウトあるいは再起動する

あとはOKボタンを押していって閉じれば良いのだが、環境変数を変更した場合、いったんログアウトするか再起動等をしなければならない。設定しただけでは効力を発揮しないので注意する。