当我使用命令时:

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

我得到这个错误:

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

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

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

任何帮助吗?


当前回答

我遭受了很多试图找到一个解决方案,最后我找到了解决方案,首先通过导航到系统变量设置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   

其他回答

打开“环境变量”(你可以在Win10的开始菜单搜索中找到它) 仔细检查JDK所在的路径,以确保它存在。 对我来说,它说“…jdk1.8/bin” 但当我把它复制到Windows资源管理器或命令提示符时,它说它不存在。 我检查了它应该在哪里,它说“jdk1.8.0_77”

一个简单的重命名设置在Android工作室和keytool是工作!

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

我正在使用gui工具,必须尝试谁不想使用密钥库命令行

它是用于创建密钥库的GUI工具。导出pem文件和lot

https://keystore-explorer.org/downloads.html

这是由于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>

找到了。

至:

my computer->rightClick->properties->Advanced system settings->environment variables->find path in system variables->dbl click-> paste the "C:\Program Files\Java\jdk1.6.0_16\bin"->OK

至:

cmd -> keytool -list -alias androiddebugkey -keystore "C:\Users\meee\.android\debug.keystore" -storepass android -keypass android