我想创建一个在tomcat中使用的密钥库,但是我使用keytool得到了错误“java.util.IllegalFormatConversionException:d!= java.lang.String”。这只发生在linux(centos7)中,而不是在windows中。我创建了密钥库
keytool -genkey -keyalg RSA -alias client -keystore testkeystore -storepass mypassword -validity 3650
并试图导入证书
keytool -import -alias arubaauth -trustcacerts -keystore testkeystore -file root_autenticazione_ATe.cer
相同的命令和相同的证书在Windows中不显示任何错误。
怎么了?
提前致谢
我认为问题来自Java 8.151和Java 9中包含的Keytool版本。旧版本对我来说正常工作。尝试降级JDK environement
编辑:进一步的调查让我意识到最后的java版本只出现在某些语言上的问题。因此,足以强制keytool
的输出语言用英语通过添加参数-J-Duser.language=en
来解决问题。
可能tomcat的默认语言与英语不同。尝试运行此命令:
keytool -J-Duser.language=en -import -alias arubaauth -trustcacerts -keystore testkeystore -file root_autenticazione_ATe.cer