如何为Java Keytool设置默认语言?

7

我使用的是英文语言和美国键盘设置的Windows操作系统。我用以下命令生成密钥库,这个命令很好用。

C:\java6\jre\bin\keytool -genkey -keyalg RSA -alias mykey -validity 3652 -keystore C:\mykeystore -storepass 111111111 < data.txt

数据.txt

My name
My org unit
My org
My city
My state
ch
yes

然而,在德语语言和键盘设置的Windows上,该程序无法正常工作。我必须将data.txt中的单词“yes”更改为“ja”才能使其正常工作。

修改data.txt并不是一个好方法。

有没有办法将英语设置为keytool的默认语言?


我发现我们可以通过添加“-J”、“-Duser.language=en”来强制Java使用英语作为默认语言。 - Tuan
1个回答

19

简而言之,您必须向Java虚拟机传递-Duser.language=en选项。 我知道两种方法可以做到这一点:

  1. 对于仅一个调用,请在keytool命令行上指定-J-Duser.language=en选项,例如:

  2. keytool -J-Duser.language=en -genkey -keyalg RSA -alias mykey -validity 3652 -keystore C:\mykeystore -storepass 111111111 < data.txt
    

    另请参见SO:在JDK7工具中强制使用英语

  3. 要全局更改Java语言,请将JAVA_TOOL_OPTIONS环境变量设置为-Duser.language=en


谢谢,我找到了 :) - Tuan
“-J-Duser.language=en” 参数在 Windows 上似乎无法被 keytool.exe 理解。然而,通过 JAVA_TOOL_OPTIONS 的方法可以正常工作。 - Tomalak

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接