🐥

重複したJavaオプションの優先順位

2022/12/21に公開

はじめに

以下のようにJavaのオプションが重複した場合にどちらが優先されるのか?と思い、調べたのでメモ。

java -Xmx1g -Xmx512m

結論

後から設定したほうが優先される。-XX:+PrintFlagsFinalで確認できる。

512mを後から設定した場合
$ java -XX:+PrintFlagsFinal -Xmx1g -Xmx512m -version 2>/dev/null
:
   size_t MaxHeapSize                              = 536870912
1gを後から設定した場合
$ java -XX:+PrintFlagsFinal -Xmx512m -Xmx1g -version 2>/dev/null
:
   size_t MaxHeapSize                              = 1073741824

Discussion