我正在这里阅读Facebook开发者的开发指南

它说,我必须使用keytool导出签名为我的应用程序,如:

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64

我不知道如何找到关键工具,以运行它。我试图打开Windows命令提示符并粘贴上述命令,但它不起作用。


当前回答

我自己找到了一个解决方案,如下所示。它工作得很好。

"C:\Program Files\Java\jdk1.6.0_26\bin\keytool.exe" -exportcert -alias
> sociallisting -keystore "D:\keystore\SocialListing"  |
> "C:\cygwin\bin\openssl.exe" sha1 -binary | "C:\cygwin\bin\openssl.exe"
> base64

其他回答

keytool是JDK的一部分。

尝试将%{JAVA_HOME}\前置到exec语句或c:\{jdk}的路径\bin。

#进入cacerts或jsk所在路径,打开并在cmd下运行以下命令

Keytool -v -list -keystore cacerts

Keytool -v -list -keystore .jks

我自己找到了一个解决方案,如下所示。它工作得很好。

"C:\Program Files\Java\jdk1.6.0_26\bin\keytool.exe" -exportcert -alias
> sociallisting -keystore "D:\keystore\SocialListing"  |
> "C:\cygwin\bin\openssl.exe" sha1 -binary | "C:\cygwin\bin\openssl.exe"
> base64

考虑添加PATH作为环境变量,并通过cmd访问它。

PATH作为值,C:\Program Files\Java\ jre1.8.0_331\bin作为变量,并通过keytool访问它…

JDK自带keytool。如果您正在使用cygwin,那么这可能已经在您的路径上了。否则,您可能会在JDK的bin文件夹中查找。

为了使shell管道(|)正常工作,您可能需要使用cygwin。