错误:在Heroku

时间:2019-10-27 10:51:06

标签: node.js heroku node-modules discord.js

我有一个不和谐的机器人已经有几个星期了,并且一切都运转良好。今天,我在git仓库中添加了一条命令,突然heroku向我显示了此错误:

  

错误:找不到模块'discord.js'

我没有更改主要bot代码或package.json文件中的任何内容。我删除了添加的新命令,并再次推送了新的更改,但仍然遇到相同的错误。 我尝试使用npm install discord.js --save重新安装discord.js,并使用新版本更新package.json。还是一无所有。

如果我在本地运行该机器人,那么它就可以工作;如果我回滚到Heroku上的最后一个工作版本,它也可以工作。

我的bot.js代码加载库:

const Discord = require("discord.js");

我的package.json文件:

{
  "name": "redacted",
  "description": "redacted",
  "version": "1.0.0",
  "main": "bot.js",
  "scripts": {
    "start": "node bot.js"
  },
  "dependencies": {
    "discord.js": "^11.5.1",
    "request": "2.81.0"
  }
}

我不知道该怎么办,因为代码与以前的版本完全相同。我不明白为什么会收到此错误。

1 个答案:

答案 0 :(得分:1)

我相信错误可能出在您的 package.json 文件中,您缺少了一些关键事项:

您必须同时包含用于 node npm 的版本(我建议使用最新版本):

"engines": {
  "node": "12.14.1",
  "npm": "6.13.4"
},

接下来,您还需要像这样定义 git存储库

"repository": {
  "type": "git",
  "url": "git+link"
},

还要确保在您的 Procfile 中有

worker: npm start

在您的 requirements.txt 中,确保具有以下内容:

npm install discord.js

您可以阅读有关在Heroku here.

上托管discord.js机器人的更多信息。