首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Keytool别名不存在

Keytool别名不存在
EN

Stack Overflow用户
提问于 2011-08-03 19:20:54
回答 3查看 44.5K关注 0票数 21

我正在尝试获取我的API密钥,以便我可以获取debug.keystore地图的md5密钥。

我运行以下命令:

代码语言:javascript
复制
 keytool –genkeypair -alias armand -keypass pass

然后运行该命令:

代码语言:javascript
复制
keytool -list -alias armand -keystore debug.keystore

然后,我输入我的密码,它会给出以下错误:

代码语言:javascript
复制
keytool error: java.lang.Exception: Alias <armand> does not exist

我做错了什么?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-08-03 19:36:17

这是获取的正确方法:

要获取证书指纹(MD5),请执行以下步骤:

您需要获取用于获取证书指纹的密钥库文件(MD5)。您的密钥库文件可以在以下路径中找到:

代码语言:javascript
复制
C:\Documents and Settings\<username>\Local Settings\Application Data\Android

(或)

代码语言:javascript
复制
C:\Documents and Settings\<username>\.android

密钥库文件名为debug.keystore。将"debug.keystore“文件复制到其他文件夹(例如:- "D:\Androidkeystore\") (它使用起来很友好)。打开命令提示符,然后转到Java安装目录。("C:\Program Files\Java\bin")然后键入下面一行(在框中给出)并按enter键。

代码语言:javascript
复制
keytool.exe -list -alias androiddebugkey -keystore "D:\AndroidKeystore\debug.keystore" -storepass android -keypass android

这里的MD5证书指纹是

代码语言:javascript
复制
64:88:A2:FC:AA:9F:B1:B0:CA:E4:D0:24:A8:1E:77:FB

这是有效的,但我在这里得到了一个小错误:

这是我的路径-C:\ android \Java\jdk1.6.0\bin>keytool.exe androiddebugkey -keystore"C:\ANDROID\debugkey\debug.keystore"-storepass android -list -alias android -keypass android

代码语言:javascript
复制
keytool error: java.lang.RuntimeException: Usage error, android is not a 
legal command
票数 27
EN

Stack Overflow用户

发布于 2013-09-13 00:19:45

您使用了错误的密钥库。您将不得不使用不同的密钥库。

在运行以下命令后,我在Fedora上得到了同样的错误:

代码语言:javascript
复制
keytool -exportcert -alias androiddebugkey -keystore androidKey -list -v

错误:

代码语言:javascript
复制
keytool error: java.lang.Exception: Alias <androiddebugkey> does not exist
java.lang.Exception: Alias <androiddebugkey> does not exist

在本例中,我犯的错误是使用密钥库而不是/home/el/.android/debug.keystore中的debug.keystore来签署android APK项目

我将其更改为使用正确的密钥库,如下所示:

代码语言:javascript
复制
[el@rosewill .android ]$ keytool -exportcert -alias androiddebugkey -keystore /home/el/.android/debug.keystore -list -v
Enter keystore password:  ******

它产生了这样的输出:

代码语言:javascript
复制
Alias name: androiddebugkey
Creation date: Aug 31, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 14be2b38
Valid from: Sat Aug 31 21:43:47 EDT 2013 until: Mon Aug 24 21:43:47 EDT 2043
Certificate fingerprints:
         MD5:  47:D1:3C:AD:3C:6D:49:22:26:01:6B:C8:4D:C0:37:42
         SHA1: 10:96:22:A1:3C:3B:4A:14:2D:B7:5E:62:1D:D7:9B:0B:24:EE:DF:BD
         SHA256: DF:BF:A9:5D:B8:AE:7D:FF:7E:E7:62:84:8F:32:9A:29:19:C6:41:82:83:FA:0B:D0:1B:59:15:AE:4D:D8:38:D1
         Signature algorithm name: SHA256withRSA
         Version: 3

Extensions: 

#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 1A 32 1F F0 03 E0 23 34   6F GE 78 CC E3 10 B5 61  .0....)4o.x....a
0010: 6D 6F F1 38                                        mo.8
]
]

作为参考,以下是我遵循的方向:

从这里:https://developers.google.com/+/quickstart/android

在终端中,运行Keytool实用程序以获取证书的SHA-1指纹。对于debug.keystore,密码是android。

代码语言:javascript
复制
keytool -exportcert -alias androiddebugkey -keystore <path-to-debug-or-production-keystore> -list -v
票数 7
EN

Stack Overflow用户

发布于 2019-06-22 20:59:37

这就是对我有效的方法,首先转到你的JDK/bin目录,在我的例子中这是C:\Program Files\Java\jdk-12.0.1\bin,点击目录路径并编写cmd打开命令提示符,或者简单地打开cmd并导航到你的JDK\bin目录。

然后写下:

代码语言:javascript
复制
keytool -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore

提示输入密码时:android

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6925659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档