Node.js应用程序在本地工作,但Heroku说缺less模块

我使用Node.JS和Socket.IO创build了一个简单的聊天应用程序,本地一切正常,但是当我将它推送到heroku时,它给我一个应用程序错误,当我检查日志时,这是错误:

Error: Cannot find module 'indexof' at Function.Module._resolveFilename <module.js:338:15> at Function.Module._load <module.js:280:25> at Module.require <module.js:364:17> at require <module.js:380:17> at Object.<anonymous> </app/node_modules/socket.io/node_modules/socket.io-parser/node_modules/emitter/index.js:6:13> at Module._compile <module.js:456:26> at Object.Module._extensions..js <module.js:474:10> at Module.load <module.js:356:32> at Functin.Module._load <module.js:312:12> at Module.require <module.js:364:17> 

所以我发现indexof是一个Socket.IO使用的模块,它位于我的node_modules文件夹中,但是由于某种原因,它不会被推送到heroku,或者只是不被识别。 我重新安装我的模块5-6次,重新创build应用程序,但它仍然给我同样的错误。 我的package.json文件有3个依赖项:Express,Socket.IO和Jade

好吧,2个小时后,我想出了问题,包含indexof模块名为“发射器”的多个文件夹也有一个gitignore文件,使git忽略该模块,不知道为什么这是甚至在那里,但删除它们解决了问题