当我使用命令时:

C:\>keytool -list -alias androiddebugkey 
            -keystore .android\debug.keystore 
            -storepass android -keypass android

我得到这个错误:

'keytool'不能被识别为内部或外部命令、可操作程序或批处理文件。

我无法在计算机上获得证书指纹(MD5)。

我已经确保密钥存储库文件位于适当的位置。

任何帮助吗?


当前回答

我知道已经有几个答案了,但没有一个对我有用,所以我发布了一个对我有用的答案,可能对别人有帮助。

首先目录上必须有keytool.exe的路径

如果不是目录在路径上,这是给出错误,然后尝试启动命令行作为一个普通用户,而不是作为一个管理员或更改目录到主目录

其他回答

在我的情况下,问题是在使用PowerShell而不是CMD:)

您所能做的就是通过命令行导航到计算机中的jre目的地,然后一旦到达bin,键入keytool命令,它就可以工作了。

C:\Program Files (x86)\Java\jre7\bin>
C:\Program Files (x86)\Java\jre7\bin>keytool -list -v -keystore"%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android



Alias name: androiddebugkey
Creation date: 23 Feb, 2014
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: 479d4fe7
Valid from: Sun Feb 23 06:19:02 IST 2014 until: Tue Feb 16 06:19:02 IST 2044
Certificate fingerprints:
MD5:  DB:6A:8E:48:22:5B:37:73:B1:91:EF:43:3F:26:F0:EC
SHA1: B4:6B:2E:5F:5A:30:C5:E4:E7:12:BB:F0:74:FC:2B:43:64:3A:FC:15
SHA256: CB:59:F3:20:7D:5B:87:99:6C:0D:32:79:79:CF:4E:8C:16:C2:37:81:7B:
B0:AF:D2:EC:3C:11:21:53:58:62:F6
Signature algorithm name: SHA256withRSA
Version: 3
Extensions:
#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: FA 96 17 9E 94 73 C3 42   F0 4B 55 5B C7 5B EE BB  .....s.B.KU[.[..
0010: C3 E5 D3 61                                        ...a
]
]

这是由于keytool.exe的路径没有设置。

在您的windows机器中打开命令提示符,转到您想运行keytool cmd的地方,然后设置keytool.exe存在的路径

步骤1:打开cmd提示符并运行

cd C:\Program Files\Java\jdk<your jdk version>\jre\lib\security

第二步:在cmd命令下运行,使用

set PATH=C:\Program Files\Java\jdk<your jdk version>\bin

第三步:运行keytool cmd,现在它将能够识别

keytool -list -alias <rest of the arguments>

我遭受了很多试图找到一个解决方案,最后我找到了解决方案,首先通过导航到系统变量设置jre路径:

control panel > System and Security > System > Advanced system settings 

在“系统变量”下单击新建

Variable name: KEY_PATH
Variable value: C:\Program Files (x86)\Java\jre1.8.0_171\bin

变量值应该是JDK bin文件夹的路径。

然后打开命令提示符并更改目录到相同的JDK的bin文件夹,如下所示

C:\Program Files (x86)\Java\jre1.8.0_171\bin 

然后在CMD中复制并粘贴下面的代码

keytool -list -v -keystore "C:\Users\user\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android   

进入“我的电脑->”右键单击->系统属性->环境变量->路径-> 将jdk/bin添加到此路径下 C:\Program Files\Java\ jdk1.8.0_211 \ bin

*如果这不起作用,那么

在cmd中使用下面的命令设置路径 set PATH=C:\Program Files\Java\jdk1.8.0_211\bin

现在路径设置好了,你可以使用keytool了