web-dev-qa-db-ja.com

Javaシステムプロパティを設定して、コマンドライン引数にJVMを追加せずにJVMを起動するたびに有効になるようにする方法

OSからデフォルトのロケールを取得する方法にJava 1.7に変更がありました。たとえば-Dsun.locale.formatasdefault = trueフラグを設定することにより、古い動作を復元する方法があります。 JVMインスタンスを開始します。

JVMインスタンスを起動するたびにコマンドライン引数で指定する必要がないように、このフラグを永続的に設定したいと思います。 JVMのデフォルト設定を変更するファイルまたはその他の可能性はありますか? Eclipse.iniファイルに似ていますが、JVM自体のものですか?

35
Bug Pecker

環境変数を設定できます Java_TOOL_OPTIONS OSで。すべてのJavaツール(Java、javac、..)は、この変数を選択して使用します。

SET Java_TOOL_OPTIONS=-Dsun.locale.formatasdefault=true

これを使用して、各JVMに特定のロケールを強制します。

ただし、これは、Javaツールを使用してアプリケーションを起動した場合にのみ機能します。たとえば、jvm DLL利用される。

編集:私はそれをテストしましたが、DLLの起動時にJava_TOOLS_OPTIONSも選択されるようです(ランチャーとしてWinRun4Jを使用するSwingアプリケーションで検証されます)

参照: http://docs.Oracle.com/javase/7/docs/webnotes/tsg/TSG-VM/html/envvars.html

47