node.js - Discord.js 机器人的 Heroku 构建失败
问题描述
我一直在使用 discord.js、visual studio code 和 node.js 编写一个机器人,我一直在尝试将它托管在 Heroku 上。但是,我的 Heroku 项目中的日志声称我的构建失败,当我查看失败的构建日志时,它会给出以下消息:
-----> Installing dependencies
Prebuild detected (node_modules already exists)
Rebuilding any native modules
> @discordjs/opus@0.5.0 install /tmp/build_0229f43f/node_modules/@discordjs/opus
> node-pre-gyp install --fallback-to-build
sh: 1: node-pre-gyp: Permission denied
npm ERR! code ELIFECYCLE
npm ERR! errno 126
npm ERR! @discordjs/opus@0.5.0 install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 126
npm ERR!
npm ERR! Failed at the @discordjs/opus@0.5.0 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! /tmp/npmcache.q9Do7/_logs/2021-04-19T19_49_08_993Z-debug.log
-----> Build failed
此外,我对我的机器人所做的最新更改,例如为命令添加别名和更改我的宣布命令的 ping,当我从 Heroku 运行机器人时不适用,但是当我在本地运行机器人时可以工作,我认为构建失败可能是这背后的原因。我可能错了,但我对 Discord 机器人的编码还是比较陌生。如何修复构建失败?
解决方案
我整天都在寻找解决这个问题的方法。我终于找到了:在 heroku 上托管你的机器人时,你可以使用“ discord-music-player ”而不是@discordjs/opus 或 opusscript。告诉我它是否对你有用!
推荐阅读
- r - 当我添加一个新的情节时,R Markdown 没有编织
- django - 返回值django中的TypeError
- simple-salesforce - 如何更改 Simple Salesforce 的 API 版本
- snowflake-cloud-data-platform - 雪花任务成本估算
- tcl - 我需要在 tk_menuOption 和调用 um 事件后选择一个选项
- javascript - 无法安装 expo-cli -g
- c - 我在 C 中创建内存泄漏吗?
- testing - Kube-monkey 区间(混沌测试)
- python - 接收带有套接字的大型腌制对象时的无限循环
- javascript - 如何迭代到 if 语句内的数组