Answers:
检查keytool可执行文件所在的目录是否在您的%PATH%
环境变量上。
例如,在Windows 7计算机上,它位于中
C:\Program Files (x86)\Java\jre6\bin
,并且我的%PATH%
变量看起来像C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Java\jre6\bin;C:\WINDOWS\System32\WindowsPowerShell\v1.0\
(以及许多其他条目)
C:\Program Files\Java\jdk1.6.0_21\bin\.android\debug.keystore
几乎肯定不是正确路径的密钥库。您需要给它正确的密钥库完整路径。
C:\Program Files\Java\jdk1.6.0_21\bin\keytool -list -alias androiddebugkey -keystore C:\Documents and Settings\Shalini\.android\debug.keystore -storepass android -keypass android
这对我有用!:
转到此路径或拥有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
找到了。
去:
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
转到我的电脑->右键单击->系统属性->环境变量->路径->将jdk / bin添加到此路径
C:\Program Files\Java\jdk1.8.0_211\bin
*如果这不起作用
在cmd中,使用以下命令设置路径
set PATH=C:\Program Files\Java\jdk1.8.0_211\bin
现在设置了路径现在可以使用keytool
确保设置了JAVA_HOME,并且环境变量中的路径反映了JAVA_HOME的bin目录。基本上,PATH应该能够在您的jdk位置中找到keytools.exe文件。
您所能做的就是通过命令行导航到计算机中的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
]
]
我经历了很多尝试找到解决方案的尝试,最后我找到了解决方案,方法是首先通过导航到:将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
其中Variable value应该是您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
对于Windows 10,您需要路径 C:\Program Files\Java\jre1.8.0_161\bin
重新启动命令并打开
在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的路径
keytool命令可能不在您的路径中,它是Java的一部分,而Java是作为Android Studio的一部分安装的。对于具体路径,运行flutter doctor -v并找到在“ Java binary at:”之后打印的路径。然后使用该标准路径将Java(最后)替换为keytool。如果您的路径包含以空格分隔的名称,例如“程序文件”,请使用平台专用的名称表示法。例如,在Mac / Linux上,使用Program \ Files,在Windows上,使用“ Program Files”。
一个简单的错误解决方案是,您首先需要在命令提示符下更改文件夹目录。默认情况下,在命令提示符或终端(在底部的Android Studio内部)选项卡中,路径设置为C:\ Users#您选择的PC名称\ AndroidStudioProjects#app名称\ flutter_app>相应地 更改:- -C:\ Users #您选择的PC名称\ AndroidStudioProjects#app名称\ flutter_app> cd \
打开JAVA文件(例如C:\ Program Files \ Java \ bin \ keytool.exe)中KEYTOOL.EXE的位置。
按住SHIFT键并右键单击keytool.exe所在的BIN文件夹,然后从此处单击打开CMD或RUN命令。
这将打开cmd。然后输入
keytool -exportcert -alias密钥库的名称-keystore KEYSTORE.jks的路径” |“ C:\ OpenSSL \ bin \ openssl” sha1 -binary |“ C:\ OpenSSL \ bin \ openssl” base64