我尝试将nestjs应用程序部署到heroku,但日志中出现此错误
2022-09-03T16:19:06.793730+00:00 app[web.1]: > pokedex@0.0.1 start:prod
2022-09-03T16:19:06.793731+00:00 app[web.1]: > node dist/main
2022-09-03T16:19:06.793731+00:00 app[web.1]:
2022-09-03T16:19:06.859243+00:00 app[web.1]: node:internal/modules/cjs/loader:959
2022-09-03T16:19:06.859244+00:00 app[web.1]: throw err;
2022-09-03T16:19:06.859245+00:00 app[web.1]: ^
2022-09-03T16:19:06.859245+00:00 app[web.1]:
2022-09-03T16:19:06.859245+00:00 app[web.1]: Error: Cannot find module '/app/dist/main'
2022-09-03T16:19:06.859246+00:00 app[web.1]: at Function.Module._resolveFilename (node:internal/modules/cjs/loader:956:15)
2022-09-03T16:19:06.859247+00:00 app[web.1]: at Function.Module._load (node:internal/modules/cjs/loader:804:27)
2022-09-03T16:19:06.859247+00:00 app[web.1]: at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
2022-09-03T16:19:06.859247+00:00 app[web.1]: at node:internal/main/run_main_module:17:47 {
2022-09-03T16:19:06.859248+00:00 app[web.1]: code: 'MODULE_NOT_FOUND',
2022-09-03T16:19:06.859248+00:00 app[web.1]: requireStack: []
2022-09-03T16:19:06.859249+00:00 app[web.1]: }
我使用npm run start:prod命令创建了一个Procfile,还尝试将@nestjs/cli
devDependency移动到依赖项,但没有成功
3条答案
按热度按时间mm5n2pyu1#
如果您不局限于单个部署选项,那么Next js可以与vercel完美搭配。
wd2eg0qa2#
显然Nest.js在dist/src/中构建了main.js
我还使用
web: npm run start:prod
创建了一个Procfile来运行应用程序zrfyljdw3#
package.json
中的start:prod
命令应更新为读取"start:prod": "node dist/src/main"
,这是由于项目的构建方式所致。通常,这意味着src
之外存在一个ts
文件,该文件作为项目的一部分被读取,或者源根目录之外的文件正在进行其他导入