如何在 JVM 中设置缺省语言环境?

2022-08-31 06:40:04

我想将我的JVM的默认值设置为.执行此操作有哪些可能的选项?Localefr_CA

我只知道一种选择Locale.setDefault()


答案 1

您可以通过 JVM 参数在命令行上设置它:

java -Duser.country=CA -Duser.language=fr ... com.x.Main

有关更多信息,请参阅国际化:了解 Java 平台中的语言环境 - 使用语言环境


答案 2

来自 Oracle 参考

应用程序的默认区域设置通过三种方式确定。首先,除非您显式更改了缺省值,否则 Locale.getDefault() 方法将返回首次加载时最初由 Java 虚拟机 (JVM) 确定的区域设置。也就是说,JVM 从主机环境确定缺省语言环境。主机环境的区域设置由主机操作系统和在该系统上建立的用户首选项确定。

其次,在某些 Java 运行时实现上,应用程序用户可以通过在命令行上设置 、和系统属性来提供此信息,从而覆盖主机的缺省语言环境。user.languageuser.countryuser.variant

第三,您的应用程序可以调用 Locale.setDefault(Locale) 方法。setDefault(Locale aLocale) 方法允许应用程序设置系统范围(实际上是 VM 范围的)资源。使用此方法设置默认区域设置后,对 Locale.getDefault() 的后续调用将返回新设置的区域设置。


推荐