缺少模块的错误
Posted
技术标签:
【中文标题】缺少模块的错误【英文标题】:Errir with missing module 【发布时间】:2020-01-30 19:15:02 【问题描述】:我在 Discord Bot Maker 中有机器人。它在我的电脑(Windows 10)上完美运行,但是当我将它移动到我的 VPS(Ubuntu 16.04)并尝试使用节点 bot.js 启动它时,我会收到。
错误:
module.js:550
throw err;
^
Error: Cannot find module './constants'
at Function.Module._resolveFilename (module.js:548:15)
at Function.Module._load (module.js:475:25)
at Module.require (module.js:597:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/home/justwolf/butter/node_modules/ws/lib/websocket.js:19:19)
at Module._compile (module.js:653:30)
at Object.Module._extensions..js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)
bot.js:https://hastebin.com/koredupoka.js
【问题讨论】:
从bot.js
发布相关代码。仅凭错误消息很难弄清楚您的问题所在。
@MaazSyedAdeeb 已编辑。
【参考方案1】:
错误:
Error: Cannot find module './constants'
表示你的代码中某处有
.... = require('./constants')
但是文件constants.js
不存在,或者至少不在它应该存在的位置。也许当您将机器人脚本上传到您的 VPS 时,您忘记了上传该文件。
有时,在现成的脚本中,配置变量(例如数据库凭据和其他内容)存储在名为 constants.js
的文件中,并且该文件未进行版本控制(在 .gitignore
中有条目)。也许您有一个名为constants.js.dist
或constants.js.example
的文件。这意味着您需要对其进行编辑并将其重命名为constants.js
【讨论】:
那是问题。我打开了 bot.js,没有常量也不是我的机器人。我的朋友发给我,我只会为他提供托管.. 所以他给我发了完整的机器人文件夹。 尝试使用grep
或ag
在整个代码中查找“常量”一词的出现,因为有一个。这就是错误的含义。
我尝试了 grep "constants" bot.js 并没有发生任何事情。我还尝试在 Atom 编辑器中查找“常量”。
在整个文件夹中使用它。转到您的项目文件夹并运行grep -inr constants ./
好的.. 已修复.. 知道问题出在哪里,但是当我将机器人从朋友下载到电脑、运行它然后转移到 VPS 时它起作用了。无论如何..感谢您的帮助。以上是关于缺少模块的错误的主要内容,如果未能解决你的问题,请参考以下文章
Rails 的 ActiveRecord 序列化:attr 方法给出“缺少类或模块错误”
错误“模块根文件夹中缺少文件 google-services.json。没有它,Google 服务插件无法运行”[重复]