【问题标题】:NestJS microservices "Cannot find module"NestJS 微服务“找不到模块”
【发布时间】:2022-12-24 01:18:20
【问题描述】:

因此,我正在尝试使用 NestJS 创建我的第一个微服务,但是当我尝试运行它时,该服务因以下错误而停止:

[13:39:21] Found 0 errors. Watching for file changes.

Error: Cannot find module 'C:\Users\voryi\IdeaProjects\YWA\des_server\services\learning-service\dist\main'
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)
    at node:internal/main/run_main_module:17:47

【问题讨论】:

  • 看起来你正在尝试运行 node dist/main.js 而没有 main.js。查看你的dist 目录
  • 它实际上确实生成了 main,但我猜由于某种原因它无法看到/读取它...... prnt.sc/AZ4-4f7XCI6p
  • dist 目录的第一级中没有main.js。您可以通过将此添加到您的nest-cli.json来定义入口文件:"entryFile": "learning-service/src/main"
  • 非常感谢!你能告诉我在哪里可以读到它是如何工作的,所以当我遇到 +/- 同样的问题时,我可以自己解决吗?
  • 我猜你只需要知道打字稿是如何定义你的转译代码的目的地的。了解以下编译器选项:baseUrlrootDiroutDir typescriptlang.org/docs/handbook/compiler-options.html

标签: node.js module nestjs typeorm node.js-typeorm


【解决方案1】:

试试npm run build 然后重启你的服务

【讨论】:

  • 没用。给出相同的错误。但感谢您的尝试!
  • 就我而言,这是实际答案
【解决方案2】:

dist 目录的第一级中没有 main.js 文件。您可以通过将此添加到您的nest-cli.json来定义入口文件:
"entryFile": "learning-service/src/main"
默认为main

【讨论】:

    【解决方案3】:

    在我的例子中,main.js 文件在 src 文件夹中,所以我不得不将脚本更改为:

    "start:prod": "node dist/src/main"
    

    【讨论】:

      猜你喜欢
      • 2023-02-05
      • 1970-01-01
      • 2021-01-18
      • 2021-08-12
      • 2021-01-12
      • 2020-06-22
      • 2020-01-14
      • 2020-08-02
      • 1970-01-01
      相关资源
      最近更新 更多