我在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.
答案 0 :(得分:6)
正如Royi Mindel所提到的,npm openssl包只是openssl二进制文件的包装而不是实际的openssl。您需要在Windows 10计算机上安装openssl,如下所示:
C:\OpenSSL-Win32\
(或您要提供的任何名称)。OPENSSL_CONF
的系统环境变量c:\OpenSSL-Win32\openssl.cnf
(指向您提取二进制文件的配置文件)C:\OpenSSL-Win32\bin
添加到您的Path
环境变量openssl version
。它应该工作,你应该看到安装的版本信息来自:https://www.tbs-certificates.co.uk/FAQ/en/openssl-windows.html
答案 1 :(得分:1)
通过查看正在运行的命令,您似乎正在尝试将已安装的npm模块用作外部命令。您只能通过全局安装模块来实现此目的:
npm install -g openssl
预计会收到警告。每次安装模块本地时,npm将尝试使用与模块的依赖关系更新您的 package.json
。由于您的主目录中可能没有package.json,因此会收到警告。