193

When I use the command:

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

I get this error:

'keytool' is not recognized as an internal or external command, operable program or batch file.

I'm not able to get the certificate fingerprint(MD5) on my computer.

I have ensured that the keystore file is present in the appropriate location.

Any help?

4

32 回答 32

258

Check that the directory the keytool executable is in is on your %PATH% environment variable.

For example, on my Windows 7 machine, it is in C:\Program Files (x86)\Java\jre6\bin, and my %PATH% variable looks like C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Java\jre6\bin;C:\WINDOWS\System32\WindowsPowerShell\v1.0\ (and many other entries)

于 2011-06-02T07:59:14.970 回答
128

这对我有用!:

转到此路径或您拥有 keytool.exe 文件的位置

C:\Program Files\Java\jre7\bin

按住shift并右键单击->然后按Open command window here

终端将弹出,将其粘贴到:

keytool -list -v -keystore "C:\Users\"Your-User-Name(no quotes)"\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

为您提供 MD5 和 SHA1

于 2013-01-07T16:26:44.397 回答
81

找到了。

去:

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
于 2012-04-14T10:43:07.373 回答
25
  1. 转到我的电脑->右键单击->系统属性->环境变量->路径->将jdk/bin添加到此路径

    C:\Program Files\Java\jdk1.8.0_211\bin
    

*如果这不起作用那么

  1. 在 cmd 中使用以下命令设置路径

    set PATH=C:\Program Files\Java\jdk1.8.0_211\bin
    

现在路径已设置,您可以使用 keytool

于 2019-05-15T07:10:53.237 回答
11

So if you have the following structure now:

 C:\Program Files\Java\jre6\bin\
                                keytool.exe
                                debug.keystore

then execute:

C:\Program Files\Java\jre6\bin>keytool -list -alias androiddebugkey -keystore debug.keystore -storepass android -keypass android 
于 2011-06-02T09:50:38.503 回答
10

在 Windows 8 上,转到 C:\Program Files\Java\jre7\bin 并在地址栏中键入不带引号的“cmd”。这将启动终端。然后按此处描述的方式输入字符串。

于 2014-04-24T11:38:46.360 回答
10

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 命令。

于 2020-09-19T14:59:33.523 回答
6

如果您想从终端的任何位置运行 keytool

示例:C:>keytool

您需要添加系统变量

对于 Windows:

1) create:
JAVA_HOME
C:\Program Files\Java\jdk1.7.0_45

2) add to Path
%JAVA_HOME%\bin;
于 2013-12-04T15:16:09.247 回答
5

您所能做的就是通过命令行导航到计算机中的 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
]
]
于 2014-04-01T07:06:28.763 回答
5

确保设置了 JAVA_HOME 并且环境变量中的路径反映了 JAVA_HOME 的 bin 目录。基本上,PATH 应该能够在您的 jdk 位置找到 keytools.exe 文件。

于 2012-07-05T17:46:22.790 回答
5

很简单,只需找到 keytool 可执行文件所在的位置,通常在java/jre(Version)/bin例如我的计算机中位于C:\Program Files\Java\jre7\bin. 您所要做的就是转到环境变量单击 PATH 使其处于活动状态,然后单击编辑,然后添加您的 keytool 所在的完整路径,对我来说,我将添加C:\Program Files\Java\jre7\bin这将允许您执行 keytool 命令而无需进入目录已安装密钥工具。

于 2016-08-13T12:41:06.140 回答
4

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

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

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

cd C:\Program Files\Java\jdk1.8.0_131\jre\lib\security

第 2 步:在 cmd 下运行以使用设置路径

set PATH=C:\Program Files\Java\jdk1.8.0_131\bin

第三步:运行keytool cmd,现在可以识别了

keytool -list -alias <rest of the arguments>
于 2021-01-12T23:12:10.937 回答
3

这意味着,您的外壳无法在硬盘上找到该工具。

一个)

  • 将工作目录更改为C:\Program Files\Java\jre6\bin\
  • 执行keytool -list -alias androiddebugkey keystore <full directory name make sure that you use enclosing in quotes> -storepass android -keypass android

二)

  • 添加C:\Program Files\Java\jre6\bin\到您的PATH变量
于 2012-07-16T17:15:31.517 回答
3

我在试图找到解决方案时遭受了很多痛苦,最后我通过导航到:首先将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   
于 2019-09-27T09:15:38.593 回答
2

就我而言,问题在于使用 PowerShell 而不是 CMD :)

于 2019-07-04T11:17:40.437 回答
1

给:

keytool -list -keystore ~/.android/debug.keystore

在您的行中,密钥库中也有一个空间。请检查一下。

于 2011-06-02T08:10:23.057 回答
1
  1. 转到C:->程序文件->Java->jdk->bin。在这里,keytool.exe 文件驻留。2.复制路径直到bin。3.转到:控制面板\系统和安全\系统4.单击高级系统设置5.单击环境变量6.在系统变量下(下半部分):双击变量:路径B。添加路径:(然后单击新建添加)C:\ Program Files \ Java \ jdk1.8.0_191 \ bin(你的路径)8.VERIFY:打开命令提示符并输入“Keytool”它应该显示keytool详细信息并且没有错误消息。
于 2021-05-06T15:14:53.107 回答
1

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

对 Android Studio 和 keytool 中的设置进行简单的重命名就可以了!

于 2018-12-09T12:01:37.040 回答
1

一个简单的错误解决方案是您首先需要在命令提示符下更改文件夹目录。默认情况下,在命令提示符或终端(底部的 Android Studio 内)选项卡中,路径设置为 C:\Users#您选择的 PC 的名称\AndroidStudioProjects#app name\flutter_app> 相应更改:- C:\Users #您选择的 PC 的名称\AndroidStudioProjects#app 名称\flutter_app>cd\

输入 **cd** (#after flutter_app>),只输入 cd\ 而不是逗号

然后输入 cd Program Files\Java\jre1.8.0_251\bin(#记住要正确检查jre的文件名)

现在键入keytool -list -v -keystore "%USERPROFILE%.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android (没有任何空格键入命令)。

要运行的代码的屏幕截图

于 2020-05-03T20:08:49.790 回答
1

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

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

并且如果不是目录在路径上而是给出错误,那么尝试以普通用户而不是管理员身份启动命令行或将目录更改为主目录

于 2017-01-29T20:45:29.163 回答
1

将此添加C:\Program Files\Java\jdk-15.0.1\bin到环境变量中。参考这个网站。

于 2021-07-04T05:45:54.427 回答
0

打开命令提示符输入这个..

"c:\Program Files(x86)\Java\jdk1.7.0\bin\keytool.exe" -list -v -alias androiddebugkey -keystore "C:\Users\EIS.android\debug.keystore" -storepass android -keypass安卓

然后按 Enter MD5 和 SHA1 密钥将得到

于 2015-02-18T09:25:11.933 回答
0

好作品

前往路径

C:\Program Files\Java\jre7\bin> keytool -exportcert -alias androiddebugkey -keystore "C:\Users\Developer\.android\debug.keystore"

然后输入 Ketsore 密码并完成工作!

于 2013-05-07T09:49:42.463 回答
0

只需搜索以下路径:C:\ → Program Files → Java → jre1.xxx → bin
确保此 bin 文件夹包含此 keytool.exe

然后打开命令提示符。

然后输入:(cd 表示更改目录) cd C:\Program Files\Java\jre1.8.0_231\bin

然后输入命令,回车

于 2020-03-11T23:36:46.713 回答
0

这只是意味着您的系统访问中没有安装keytool关键字:访问这里并首先下载java JDK

然后在您的环境变量中设置 java JDK。

于 2021-12-05T09:15:17.320 回答
0

对于 Windows 10,您需要路径C:\Program Files\Java\jre1.8.0_161\bin

重启命令并打开

于 2018-04-08T18:23:24.520 回答
0

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

于 2020-04-30T19:00:19.377 回答
0

打开高级系统设置——>打开环境变量——>在系统变量中双击“路​​径”——>从C复制你的jdk路径,应该是这样的“C:\Program Files\Java\jdk-15.0.2 \bin" 并在点击 New --> 点击 ok 然后重新启动 android studio 后粘贴它,这应该可以解决问题

于 2021-09-15T04:38:45.670 回答
0

我的情况是,无论我在哪里调用它,它都不起作用,无论我是否路径文件,如果我用 powershell 打开它。

但是如果我用cmd打开它就可以了。

于 2020-01-05T15:24:36.797 回答
0

在 java 安装文件夹中找到您的 keytool.exe

我的 C:\Program Files\Java\jre1.8.0_181\bin在任何地方都可以打开 cmd 并运行

SET PATH=%PATH%;C:\Program Files\Java\jre1.8.0_181\bin;

将路径更改为您找到 keytool.exe 的路径

于 2019-03-17T11:48:06.373 回答
0

如果您使用颤振并下载了 openssl-for-windows

  • 打开命令提示符
  • 类型flutter doctor -v
  • Android 工具链下你会看到Java binary at: C:\Program Files\Android\jre\bin\java
  • 现在复制代码行并执行cd C:\Program Files\Android\jre\bin
  • 类型keytool -exportcert -alias androiddebugkey -keystore "C:\Users\Username\.android\debug.keystore" | "Location to openssl.exe" sha1 -binary | "Location to openssl.exe" base64

(双引号是必须的)

  • 输入密钥库密码: android(默认密码)

这会给你Key Hash

于 2022-02-13T13:54:36.397 回答
-2
  1. 打开您的 KEYTOOL.EXE 在您的 JAVA 文件中的位置,例如 C:\Program Files\Java\bin\keytool.exe。

  2. 按住 SHIFT 并右键单击 keytool.exe 所在的 BIN 文件夹,然后单击从此处打开 CMD 或运行命令。

  3. 这将打开 cmd。然后输入

keytool -exportcert -alias KEYSTORE 的名称 -keystore KEYSTORE.jks 的路径" | "C:\OpenSSL\bin\openssl" sha1 -binary | "C:\OpenSSL\bin\openssl" base64

  1. 密码提示,输入 android 和 BOOOOOOOM ......你有你的钥匙。
于 2020-05-17T15:54:25.833 回答