当我使用命令时:

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

我得到这个错误:

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

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

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

任何帮助吗?


当前回答

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

其他回答

在windows 8中,打开C:\Program Files\Java\jre7\bin,在地址栏中输入不带引号的cmd。这将启动终端。然后按这里的描述输入字符串。

keytool作为运行Android Studio所需的JRE的一部分随Android Studio一起发布。

在Windows上:C:\Program Files\Android\Android Studio\jre\bin\keytool.exe

在Mac上:/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/keytool

将其添加到环境变量中,然后再次运行keytool命令。

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

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

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

找到了。

至:

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

keytool命令可能不在你的路径中——它是Java的一部分,是作为Android Studio的一部分安装的。对于具体路径,运行flutter doctor -v并找到打印在' Java binary at: '之后的路径。然后使用完全限定的路径,用keytool替换java(在最后)。如果路径包含空格分隔的名称,例如Program Files,则使用适合平台的符号表示这些名称。例如,在Mac/Linux上使用程序\文件,在Windows上使用“程序文件”。