我在Heroku上部署了一个不和谐的音乐机器人,除了在语音通道中播放音乐外,其他所有功能都可以运行,尽管当我在PC上运行代码时-一切正常。键入npm列表,我已经看到错误消息“缺少npm ERR!对等dep:node-opus @ ^ 0.2.7,discord.js @ 11.5.1要求”。因此,node-opus和bot的问题无法播放音乐。当然,我已经使用npm init将这个库和其他库放入package.json中。我将下面的代码粘贴到package.json文件中。
我已经尝试将所有这些库与npm,yarn,npm和yarn与package.json一起安装。
{
"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"
}
}
答案 0 :(得分:0)
我将删除node_modules
文件夹,在安装discord.js之后运行npm i -g install-peerdeps
,然后在项目文件夹中运行install-peerdeps discord.js@11.5.1
(如果没有其他对等依赖项)。如果他们这样做,您可以随时npm rm <module>
离开。
答案 1 :(得分:0)
引自Discord.js docs ...
忽略所有关于未满足对等项依赖关系的警告,因为它们都是可选的。
因此,除非您尝试使用node-opus
时消息出现在控制台中,否则请不要担心警告。
由于您的语音支持问题,请采取以下步骤以寻求解决方案。
node-opus
,但请尝试Discord.js所需的特定版本:npm i node-opus@^0.2.7
。node-opus
根本不起作用,请尝试opusscript
(尽管认为node-opus
是可行的)。