1. 密钥库文件不存在: debug.keystore
D:\ASProject\******>keytool -v -list -keystore debug.keystore
keytool 错误: java.lang.Exception: 密钥库文件不存在: debug.keystore
java.lang.Exception: 密钥库文件不存在: debug.keystore
at sun.security.tools.keytool.Main.doCommands(Main.java:745)
at sun.security.tools.keytool.Main.run(Main.java:343)
at sun.security.tools.keytool.Main.main(Main.java:336)
该问题应该是没有在正确的目录执行该命令,需要到debug.keystore所在目录执行以上命令,如果目前没有debug.keystore,可以使用以下步骤进行创建。
进入到.android目录下,运行cmd、powershell或其他shell、terminal输入运行keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -keyalg RSA -validity 10000
即可解决。
除了口令部分需要自由输入六位密码以及确认是否正确部分,其他可以直接回车。
CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown是否正确?[否]:
此处需要输入y
。
PS:在这里输入密码后,我遇到了Keystore was tampered with, or password was incorrect
问题,如遇到见下文。
2. Keystore was tampered with, or password was incorrect
keytool 错误: java.io.IOException: Keystore was tampered with, or password was incorrect
java.io.IOException: Keystore was tampered with, or password was incorrect
at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:780)
at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:56)
at sun.security.provider.KeyStoreDelegator.engineLoad(KeyStoreDelegator.java:224)
at sun.security.provider.JavaKeyStore$DualFormatJKS.engineLoad(JavaKeyStore.java:70)
at java.security.KeyStore.load(KeyStore.java:1445)
at sun.security.tools.keytool.Main.doCommands(Main.java:892)
at sun.security.tools.keytool.Main.run(Main.java:343)
at sun.security.tools.keytool.Main.main(Main.java:336)
Caused by: java.security.UnrecoverableKeyException: Password verification failed
at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:778)
... 7 more
解决办法:删除.android目录下已存在的debug.keystore
文件。debug.keystore.lock
文件不需要动,对解决问题并没有什么影响。