npm install openssl在Windows 10上失败了

Ken*_*eth 3 windows openssl node.js npm-install

我在Win10的Node.js命令窗口中运行以下命令.它失败了.有人有想法如何解决它?我正在运行Node.js v7.3.0

C:\Users\haozhang>npm install openssl
C:\Users\haozhang
`-- openssl@1.1.0
  +-- mout@0.11.1
  `-- nyks@2.31.3
    +-- async@2.1.5
    | `-- lodash@4.17.4
    `-- mout@1.0.0

npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\haozhang\package.json'
npm WARN haozhang No description
npm WARN haozhang No repository field.
npm WARN haozhang No README data
npm WARN haozhang No license field.

C:\Users\haozhang>openssl
'openssl' is not recognized as an internal or external command,
operable program or batch file.
Run Code Online (Sandbox Code Playgroud)

Chr*_*cht 7

正如Royi Mindel所提到的,npm openssl包只是openssl二进制文件的包装而不是实际的openssl.您需要在Windows 10计算机上安装openssl,如下所示:

  1. https://code.google.com/archive/p/openssl-for-windows/downloads下载二进制文件
  2. 提取到C:\OpenSSL-Win32\(或任何你想要的名称).
  3. OPENSSL_CONF使用值添加系统环境变量c:\OpenSSL-Win32\openssl.cnf(指向您提取二进制文件的配置文件)
  4. 添加C:\OpenSSL-Win32\bin到您的Path环境变量
  5. 打开cmd或PowerShell并键入openssl version.它应该工作,你应该看到安装的版本

信息来自:https://www.tbs-certificates.co.uk/FAQ/en/openssl-windows.html

  • 对于阅读本文的任何人:不要从上面提供的链接下载 OpenSSL。二进制文件很旧并且具有已知的安全漏洞。这是一个更好的选择:https://www.openssl.org/community/binaries.html (3认同)

mih*_*hai 1

通过查看您正在运行的命令,您似乎正在尝试使用已安装的 npm 模块作为外部命令。您只能通过全局安装该模块来实现此目的:

npm install -g openssl
Run Code Online (Sandbox Code Playgroud)

您收到的警告是预期的。每次您在本地安装模块时,npm 都会尝试更新 package.json对该模块的依赖关系。由于您的主目录中可能没有 package.json,因此您会收到警告。