Openssl 未被识别为内部或外部命令

问题描述 投票:0回答:4

我希望为我的应用程序生成应用程序签名,该签名稍后将与 Facebook 集成。在 Facebook 的一篇教程中,我发现了这个命令:

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

在教程中,它说通过运行此cmd,我生成签名的过程将开始。

但是,这个命令给出了一个错误:

openssl is not recognized as an internal or external command

我怎样才能摆脱这个?

java android facebook-android-sdk keytool
4个回答
439
投票

在 OpenSSL 的位置...您必须实际输入已下载的 OpenSSL 文件夹的路径。你的实际命令应该如下所示:

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | "C:\Users\abc\openssl\bin\openssl.exe" sha1 -binary | "C:\Users\abc\openssl\bin\openssl.exe" base64

请记住,您输入的路径将是您安装 OpenSSL 的路径。

编辑:

您可以从以下相应链接下载适用于 Windows 32 和 64 位的 OpenSSL:

64 位的 OpenSSL

32 位 OpenSSL


36
投票

请按照以下步骤操作,希望您的密钥能够正常工作:

  1. 第 1 步 您将需要 OpenSSL。您可以从 Google Code 上的 openssl-for-windows 项目下载二进制文件。

  2. 步骤 2 解压文件夹,然后将

    bin
    文件夹的路径复制到剪贴板。

    例如,如果文件解压到位置

    C:\Users\gaurav\openssl-0.9.8k_WIN32
    ,则复制路径
    C:\Users\gaurav\openssl-0.9.8k_WIN32\bin

  3. 步骤3 将路径添加到您的系统环境路径。设置

    PATH
    环境变量后,打开 cmd 并输入以下命令:

    C:\>keytool -exportcert -alias androiddebugkey -keystore [path to debug.keystore] | openssl sha1 -binary | openssl base64
    

    出现提示时输入您的密码。如果该命令有效,那么您将看到一个密钥。


25
投票

使用整个路径,如下所示:

exportcert -alias androiddebugkey -keystore ~/.android
/debug.keystore | "C:\openssl\bin\openssl.exe" sha1 -binary | "C:\openssl\bin\op
enssl.exe" base64

这对我有用。


11
投票

这对我来说很成功。

“C:\ Program Files \ Java \ jdk1.6.0_26 in \ keytool.exe”-exportcert -alias Sociallisting -keystore“D:\ keystore \ SocialListing”| “C

© www.soinside.com 2019 - 2024. All rights reserved.