无法使用 NPM 安装“discord-music-bot”

Posted

技术标签:

【中文标题】无法使用 NPM 安装“discord-music-bot”【英文标题】:Cannot install 'discord-music-bot' with NPM 【发布时间】:2019-02-27 08:50:25 【问题描述】:

这是我在 CMD 中所做的,机器人运行良好,但我无法安装 NPM。

C:\Users\Alex\Desktop\Projects\PBodyBot>npm i discord-music-bot
npm WARN deprecated snekfetch@3.6.4: use node-fetch instead

> ref@1.3.5 install C:\Users\Alex\Desktop\Projects\PBodyBot\node_modules\ref
> node-gyp rebuild


C:\Users\Alex\Desktop\Projects\PBodyBot\node_modules\ref>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild )  else (node "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "C:\Program Files (x86)\Python37-32\python.EXE", you can set the PYTHON env variable.
gyp ERR! stack     at PythonFinder.failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:483:19)
gyp ERR! stack     at PythonFinder.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:508:16)
gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:284:29
gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:152:21)
gyp ERR! System Windows_NT 10.0.17134
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\Alex\Desktop\Projects\PBodyBot\node_modules\ref
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok

> node-opus@0.2.9 install C:\Users\Alex\Desktop\Projects\PBodyBot\node_modules\node-opus
> node-gyp rebuild


C:\Users\Alex\Desktop\Projects\PBodyBot\node_modules\node-opus>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild )  else (node "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "C:\Program Files (x86)\Python37-32\python.EXE", you can set the PYTHON env variable.
gyp ERR! stack     at PythonFinder.failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:483:19)
gyp ERR! stack     at PythonFinder.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:508:16)
gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:284:29
gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:152:21)
gyp ERR! System Windows_NT 10.0.17134
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\Alex\Desktop\Projects\PBodyBot\node_modules\node-opus
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN Invalid version: "1"
npm WARN discord.js@11.4.2 requires a peer of bufferutil@^3.0.3 but none is installed. You must install peer dependencies yourself.
npm WARN discord.js@11.4.2 requires a peer of erlpack@discordapp/erlpack but none is installed. You must install peer dependencies yourself.
npm WARN discord.js@11.4.2 requires a peer of opusscript@^0.0.6 but none is installed. You must install peer dependencies yourself.
npm WARN discord.js@11.4.2 requires a peer of sodium@^2.0.3 but none is installed. You must install peer dependencies yourself.
npm WARN discord.js@11.4.2 requires a peer of libsodium-wrappers@^0.7.3 but none is installed. You must install peer dependencies yourself.
npm WARN discord.js@11.4.2 requires a peer of uws@^9.14.0 but none is installed. You must install peer dependencies yourself.
npm WARN PBodyBot No description
npm WARN PBodyBot No repository field.
npm WARN PBodyBot No README data
npm WARN PBodyBot No license field.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: ref@1.3.5 (node_modules\ref):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: ref@1.3.5 install: `node-gyp rebuild`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-opus@0.2.9 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-opus@0.2.9 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Alex\AppData\Roaming\npm-cache\_logs\2018-09-23T18_41_05_429Z-debug.log

我一直在尝试解决这个问题几个小时,并且我已经搜索了所有 SO,但对于其他所有人来说,这似乎是他们的代码问题而不是安装 NPM 本身。我正在运行 Windows 10 和 Node 版本 v8.9.4。

我也尝试以管理员身份运行 CMD,但没有任何效果。

我尝试过的其他事情: 设置 Python 目录 卸载并重新安装节点 更新 discord.io

【问题讨论】:

为 Windows 运行:npm install --global --production windows-build-toolsnpm install -g node-gyp。阅读更多:github.com/nodejs/node-gyp @Lemix 谢谢你这个工作,也许你应该把这个作为答案发布,这样如果他们有同样的问题,人们就会看到它。 【参考方案1】:

您需要在 Windows 上安装构建工具:

npm install -g node-gyp
npm install --global --production windows-build-tools

更多信息:node-gyp

【讨论】:

以上是关于无法使用 NPM 安装“discord-music-bot”的主要内容,如果未能解决你的问题,请参考以下文章

我无法使用npm安装夏普

我无法使用 npm 安装Sharp

我无法使用 npm 安装包裹

无法使用 npm 安装 @angular/cli

无法使用 npm 安装任何东西(反应)

我无法使用 npm 命令行安装任何东西