密钥库文件不存在

问题描述 投票:35回答:8

我正在尝试获取SHA1指纹,以便获得Google API密钥。我在以下目录中:

/library/Java/Java virtual machines/JDK1.8.0_20.JDK/contents/home/斌

然后我从谷歌网站执行命令:

keytool -list -v -keystore mystore.keystore

但它给出了这个错误:

keytool error: java.lang.Exception: Keystore file does not exist: mystore.keystore
java.lang.Exception: Keystore file does not exist: mystore.keystore
    at sun.security.tools.keytool.Main.doCommands(Main.java:742)
    at sun.security.tools.keytool.Main.run(Main.java:340)
    at sun.security.tools.keytool.Main.main(Main.java:333)

我按照教程,但我不能让它工作!有谁知道我做错了什么?

BTW:我正在使用带有Xamarin Studio 5.5.2的Macbook Pro。

android xamarin google-api mono
8个回答
23
投票

你说你正在运行命令......

/Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home/bin

您的密钥库文件也在该目录中吗?如果没有,那么您需要指定密钥库文件的路径,例如

keytool -list -v -keystore ~/somefolder/mystore.keystore

使用的密钥库应该是用于签署应用程序的密钥库。对于Xamarin调试版本,这将是位于/Users/[USERNAME]/.local/share/Xamarin/Mono\ for\ Android/debug.keystore的调试密钥库。 OSX上的命令就是......

keytool -list -v -keystore /Users/[USERNAME]/.local/share/Xamarin/Mono\ for\ Android/debug.keystore -alias androiddebugkey -storepass android -keypass android

或者在Windows 7上

keytool -list -v -keystore C:\Users\[USERNAME]\AppData\Local\Xamarin\Mono for Android\debug.keystore -alias androiddebugkey -storepass android -keypass android

68
投票

Linux和Mac命令

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

将为您提供SHA1,SHA256,MD5作为默认调试密钥。它可以用于谷歌播放服务的开发和调试。

如需出版证书,请关注https://developer.android.com/studio/publish/app-signing.html


8
投票

我面临同样的问题,但通过以下命令解决:

keytool -exportcert -keystore C:\Users\<USERNAME>\.android\debug.keystore -list -v

操作系统:Windows 7


5
投票

请提供debug.keystore的完整路径。示例:C:/Users/myusername/.android/debug.keystore而不是〜/ .android / debug.keystore


4
投票

对于我的情况,debug.keystore是在Android Studio上首次运行应用程序后生成的


2
投票

我从teamtreehouse论坛找到了这个指南。希望它能帮到你。

1)按Start + R并键入cmd.exe打开命令提示符。

2)使用Windows资源管理器,找到JDK目录所在的位置(通常是Program Files >> Java)并复制路径。

3)在命令提示符下,键入cd,然后键入JDK bin目录的目录。例如:cd C:\ Program Files \ Java \ jdk1.8.0_25 \ bin是我使用的命令(你的命令可能会有所不同)。

4)使用Windows资源管理器,找到.android目录所在的位置(通常在用户>> [YOUR WINDOWS USERNAME]下)并复制路径。

5)现在,使用以下命令:

keytool -exportcert -alias androiddebugkey -keystore[PATH_TO_.ANDROID_DIRECTORY] -list -v

用您复制的路径替换[PATH_TO_.ANDROID_DIRECTORY]。请注意,您应该在JDK的bin目录中的terminal / command提示符中运行此命令(您在步骤3中执行了此操作)。

我的是C:\Program Files\Java\jdk1.8.0_121\bin>keytool -exportcert -alias androiddebugkey -keystore C:\Users\HoSiLuan\.android\debug.keystore -list -v

记得使用C:\Users\HoSiLuan\.android\debug.keystore而不是~/.android\debug.keystore。键入此缩短方式时仍然出现错误。

然后,您应该输入正常密码,您可以输入(密码是android)。之后,您将看到打印到屏幕上的证书列表。


1
投票

Mac和Ubuntu的最新更新

keytool -exportcert -alias androiddebugkey -keystore  ~/.android/debug.keystore -list -v

1
投票

我有窗户10,我去了路线

c:/Users/usuario/.android/

在目录中,执行命令:

keytool -exportcert -keystore debug.keystore -list -v

必须生成指纹:

SHA-1: 73:BE:1A:.......................
MDO: 73:BE:A1.........................
SHA-256: 3B:B8:98:...................
© www.soinside.com 2019 - 2024. All rights reserved.