繁体   English   中英

Heroku Deploy错误:找不到模块'./errors/cast'

[英]Heroku Deploy Error: Cannot find module './errors/cast'

我使用yeoman angular-fullstack生成器构建我的应用程序,然后根据自己的目的进行修改。 我使用yo angular-fullstack构建了dist文件夹以部署到heroku:deploy heroku。 它为我创建了一个新的heroku应用程序,当我进入dist文件夹和git push heroku master时,一切都很好。

我希望能够将我现有的heroku应用程序添加到此dist文件夹的部署过程中,因此我按照这篇文章如何将文件夹与现有的Heroku应用程序链接 然后我可以使用与heroku不同的远程名称部署到我自己的应用程序。

当它开始在heroku上运行时,我一直得到同样的错误。 我无法弄清楚为什么完全相同的代码在为我创建的应用程序上运行正常但不是我现有的应用程序。 这几乎就像我需要清除node_modules并再次推送?

    2014-02-21T04:43:51.989439+00:00 app[web.1]: module.js:340
    2014-02-21T04:43:51.996351+00:00 app[web.1]: Error: Cannot find module './errors/cast'
    2014-02-21T04:43:51.996351+00:00 app[web.1]:     at Function.Module._resolveFilename (module.js:338:15)
    2014-02-21T04:43:51.991555+00:00 app[web.1]:     throw err;
    2014-02-21T04:43:51.991785+00:00 app[web.1]:           ^
    2014-02-21T04:43:51.996351+00:00 app[web.1]:     at require (module.js:380:17)
    2014-02-21T04:43:51.996351+00:00 app[web.1]:     at Module.require (module.js:36         4:17)
    2014-02-21T04:43:51.996351+00:00 app[web.1]:     at Function.Module._load (module.js:280:25)
    2014-02-21T04:43:51.996351+00:00 app[web.1]:     at Module._compile (module.js:456:26)
    2014-02-21T04:43:51.996351+00:00 app[web.1]:     at Function.Module._load (module.js:312:12)
    2014-02-21T04:43:51.996351+00:00 app[web.1]:     at Object.<anonymous> (/app/node_modules/mongoose/lib/error.js:32:27)
    2014-02-21T04:43:51.996351+00:00 app[web.1]:     at Module.load (module.js:356:32)
    2014-02-21T04:43:51.996351+00:00 app[web.1]:     at Object.Module._extensions..js (module.js:474:10)
    2014-02-21T04:43:51.996560+00:00 app[web.1]:     at Module.require (module.js:364:17)
    2014-02-21T04:43:53.457214+00:00 heroku[web.1]: State changed from starting to crashed

这是我在dist文件夹中的packages.json

   {
       "name": "myapp",
       "version": "1.0.0",
       "dependencies": {
         "express": "~3.4.3",
         "lodash": "~2.4.1",
         "mongoose": "~3.5.5",
         "mongoose-unique-validator": "~0.3.0",
         "connect-mongo": "~0.4.0",
         "passport": "latest",
         "passport-local": "latest",
         "passport-facebook": "latest",
         "passport-twitter": "latest",
         "passport-google": "latest",
         "ejs": "~0.8.4"
       },
       "engines": {
         "node": ">=0.10.0"
        },
        "scripts": {
          "test": "grunt test"
        }
      }

问题几乎肯定是您没有签入所需的所有文件。 如果你不能看到你的git仓库的问题,请尝试运行heroku run bash ,并使用cdlsmore环顾四周什么是越来越部署到Heroku的,看看有什么缺失。

您的问题可能是您require('./errors/cast')但尚未签入演员文件。

更新:

另一种可能是你在OS X上检查了./errors/Cast ,它不区分大小写,但是在区分大小写的Linux上找不到该文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM