node.js - 如何修复 npm ERR!peer dep 缺失:discord.js@11.5.1 需要的 node-opus@^0.2.7?
问题描述
我已经为heroku部署了一个不和谐的音乐机器人,除了在语音频道中播放音乐外,一切正常,尽管当我在电脑上运行我的代码时——一切正常。键入 npm 列表,我看到错误消息“npm ERR!peer dep missing: node-opus@^0.2.7, required by discord.js@11.5.1”。node-opus 的问题和显然 bot 因此无法播放音乐。当然,我已经使用 npm init 将这个库和其他库放入 package.json 中。我从 package.json 文件中粘贴了一段代码。
我尝试使用 npm、yarn、npm 和带有 package.json 的yarn 安装所有这些库。
{
"dependencies": {
"discord.js": "^11.5.1",
"ffmpeg-binaries": "^4.0.0",
"google-tts-api": "0.0.4",
"heroku": "^7.25.0",
"node-gyp": "^5.0.0",
"node-opus": "^0.3.2",
"simple-youtube-api": "^5.2.0",
"sqlite3": "^4.0.9",
"uws": "^10.148.1",
"ytdl-core": "^0.29.2"
},
"scripts": {
"start": "node bot",
"test": "echo \"Error: no test specified\" && exit 1"
}
}
解决方案
我会删除该node_modules
文件夹,npm i -g install-peerdeps
在安装 discord.js 后运行,然后install-peerdeps discord.js@11.5.1
在您的项目文件夹中运行,如果没有其他对等依赖项与它有关。如果他们这样做,你总是可以npm rm <module>
离开。
推荐阅读
- javascript - 数字输入字段 JavaScript 自定义验证
- python - 使用 Pandas (Python) 创建一个列列表并将它们汇总到一个新列中
- python - Pandas Dataframe 到 Postgres 表的转换不起作用
- list - 定义谓词 maxlist(List, Max) 使得 Max 是数字列表中最大的数字 List
- go - 将 Go 项目上传到 GitHub 存储库
- wmi - 为 SCCM 查询创建自定义 WMI 类
- c++ - constexpr 与使用参数包扩展的 POD 结构成员联合
- docker - Docker-entrypoint.sh 导致带有 golang 的 ARM 映像“未找到”
- java - 错误:无法访问 jarfile - 运行 bfg.jar 时
- javascript - 使用前未定义的前向参考任务