[英]Heroku deploy error : Cannot find module 'Express'
我正在尝试在 heroku 上部署 Node.js 应用程序。 但是每当我尝试部署它时都会抛出错误 - 找不到模块“Express”。 尽管在 package.json 文件中已经提到,它仍然抛出错误。 我已经按照 Heroku Node.js 文档中提到的每一步,到处查找问题并做了所有需要的事情。 这是我的 package.json 文件 -
{
"name": "kimaya_soft",
"version": "1.0.0",
"description": "Application for school",
"main": "index.js",
"scripts": {
"start": "set NODE_ENV=production&& node index.js"
},
"author": "Anjali Ahlawat",
"license": "ISC",
"dependencies": {
"express": "^4.17.1",
"bcrypt": "^5.0.0",
"compression": "^1.7.4",
"config": "^3.3.1",
"helmet": "^4.2.0",
"joi": "^14.3.1",
"jsonwebtoken": "^8.5.1",
"jspdf": "^2.1.1",
"jspdf-autotable": "^3.5.13",
"lodash": "^4.17.20",
"mongoose": "^5.9.7",
"nodemailer": "^6.4.16"
},
"devDependencies": {},
"engines": {
"node": "10.x"
}
}
部署日志-
2020-12-05T16:14:35.338290+00:00 app[web.1]: WARNING: NODE_ENV value of 'production' did not match any deployment config file names.
2020-12-05T16:14:35.339736+00:00 app[web.1]: WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
2020-12-05T16:14:35.347204+00:00 app[web.1]: internal/modules/cjs/loader.js:638
2020-12-05T16:14:35.347205+00:00 app[web.1]: throw err;
2020-12-05T16:14:35.347205+00:00 app[web.1]: ^
2020-12-05T16:14:35.347205+00:00 app[web.1]:
2020-12-05T16:14:35.347206+00:00 app[web.1]: Error: Cannot find module 'Express'
2020-12-05T16:14:35.347206+00:00 app[web.1]: at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
2020-12-05T16:14:35.347207+00:00 app[web.1]: at Function.Module._load (internal/modules/cjs/loader.js:562:25)
2020-12-05T16:14:35.347207+00:00 app[web.1]: at Module.require (internal/modules/cjs/loader.js:692:17)
2020-12-05T16:14:35.347208+00:00 app[web.1]: at require (internal/modules/cjs/helpers.js:25:18)
2020-12-05T16:14:35.347208+00:00 app[web.1]: at Object.<anonymous> (/app/startup/routes.js:1:17)
2020-12-05T16:14:35.347209+00:00 app[web.1]: at Module._compile (internal/modules/cjs/loader.js:778:30)
2020-12-05T16:14:35.347209+00:00 app[web.1]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
2020-12-05T16:14:35.347209+00:00 app[web.1]: at Module.load (internal/modules/cjs/loader.js:653:32)
2020-12-05T16:14:35.347210+00:00 app[web.1]: at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
2020-12-05T16:14:35.347210+00:00 app[web.1]: at Function.Module._load (internal/modules/cjs/loader.js:585:3)
2020-12-05T16:14:35.347210+00:00 app[web.1]: at Module.require (internal/modules/cjs/loader.js:692:17)
2020-12-05T16:14:35.347211+00:00 app[web.1]: at require (internal/modules/cjs/helpers.js:25:18)
2020-12-05T16:14:35.347211+00:00 app[web.1]: at Object.<anonymous> (/app/index.js:5:1)
2020-12-05T16:14:35.347211+00:00 app[web.1]: at Module._compile (internal/modules/cjs/loader.js:778:30)
2020-12-05T16:14:35.347212+00:00 app[web.1]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
2020-12-05T16:14:35.347212+00:00 app[web.1]: at Module.load (internal/modules/cjs/loader.js:653:32)
2020-12-05T16:14:35.406916+00:00 heroku[web.1]: Process exited with status 1
2020-12-05T16:14:35.479240+00:00 heroku[web.1]: State changed from starting to crashed
2020-12-05T16:17:49.304494+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=kimaya-school-app.herokuapp.com request_id=3acd680f-946a-4c2a-82ef-d20c1ce1d3cc fwd="106.215.0.191" dyno= connect= service= status=503 bytes= protocol=https
2020-12-05T16:17:49.834239+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=kimaya-school-app.herokuapp.com request_id=2beb12ac-d1df-4398-a9f0-c8820bf05284 fwd="106.215.0.191" dyno= connect= service= status=503 bytes= protocol=https
文件结构 -
->classes
->config
->default.json
->functions
->kimaya-school-app
->middleware
->modals
->node_modules
->routes
->startup
->db.js
->prod.js
->routes.js
->.gitignore
->index.js
->package-lock.json
->package.json
->Procfile
->sendMail.js
您的 package.json 在我看来还不错,但引起我注意的部分是日志中的“快递”部分。 您的代码中是否有任何部分像这样导入快递?
var express = require('Express'),
如果是这样,您应该只使用小写字母来导入它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.