我在本地机器上生成证书时出现以下错误。
C:\Users\abc>keytool -genkey -alias tomcat -keyalg RSA
Enter keystore password:
keytool error: java.io.IOException: Keystore was tampered with, or password was incorrect
我认为jdk版本有一些问题。我在我同事的机器上运行了同样的命令,它工作得很好。
请分享你的意见。
我在本地机器上生成证书时出现以下错误。
C:\Users\abc>keytool -genkey -alias tomcat -keyalg RSA
Enter keystore password:
keytool error: java.io.IOException: Keystore was tampered with, or password was incorrect
我认为jdk版本有一些问题。我在我同事的机器上运行了同样的命令,它工作得很好。
请分享你的意见。
当前回答
这个答案将有助于新Mac用户(适用于Linux, windows 7 64位)。
空密码在我的mac上工作。(在终端粘贴以下一行)
keytool -list -v -keystore ~/.android/debug.keystore
当它提示
Enter keystore password:
只要按回车键(不要输入任何东西)。它应该会起作用。
请确保它是默认调试。密钥存储库文件,不适用于基于项目的密钥存储库文件(密码可能为此更改)。
也适用于MacOS Sierra 10.10+。
我听说,它也适用于linux环境。我还没有在Linux中进行测试。
其他回答
你有两个选择:
CMD在输入时不会在屏幕上显示密码 所以只要输入正确的密码——小心点——然后按回车。
或 只使用:
keytool -list -keystore 'keystoreName' -storepass 'type your keystore passwd'
对于Keys的完整信息,添加-v:
keytool -v -list -keystore 'keystoreName' -storepass 'type your keystore passwd'
从你的描述中,我假设你用的是windows机器,你的家是abc
所以现在:原因
执行此命令时
keytool -genkey -alias tomcat -keyalg RSA
因为您没有指定显式的密钥存储库,它将尝试生成(在您的情况下,当您获得异常以便更新)密钥存储库C:\users\abc>。当然,您需要为.keystore提供旧密码,而我相信您正在提供您的版本(一个新版本)。
解决方案
删除C:\users\abc>目录下的.keystore,然后尝试执行该命令 或者尝试下面的命令,它将创建一个新的xyzkeystore: keytool -genkey -keystore xyzkeystore -alias tomcat -keyalg RSA . xml
注意:-genkey已经过时了,应该使用-genkeypair,尽管这两个功能相同。
检查你的主文件夹~/.gradle/gradle.properties。有时候如果你有gradle。属性在主目录中,它从那里的细节。你可以改变它或者删除文件。然后它将从您的本地文件夹中获取所需的详细信息。
这个答案将有助于新Mac用户(适用于Linux, windows 7 64位)。
空密码在我的mac上工作。(在终端粘贴以下一行)
keytool -list -v -keystore ~/.android/debug.keystore
当它提示
Enter keystore password:
只要按回车键(不要输入任何东西)。它应该会起作用。
请确保它是默认调试。密钥存储库文件,不适用于基于项目的密钥存储库文件(密码可能为此更改)。
也适用于MacOS Sierra 10.10+。
我听说,它也适用于linux环境。我还没有在Linux中进行测试。
如果您已经有了.store文件,则必须使用与生成该文件时相同的密码。所以我的解决方案是:
rm *.store
rm *.cer
这可能听起来很奇怪,但我只是想了解keytool和我的源代码控制我的教程文件和重新运行他们以后!