dar*_*rgi 5 nomachine-nx nestjs
我一直在尝试遵循这些指南来学习 NX,但是当我尝试提供 NestJs api 时遇到了这个问题,你可以在这个 repo上看到完整的代码
nx serve api
Run Code Online (Sandbox Code Playgroud)
我收到这些错误
Error: Unable to resolve @nrwl/node:execute.
Cannot find executor 'execute' in /Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/node/executors.json.
at Workspaces.readExecutor (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/tao/src/shared/workspace.js:92:19)
at getExecutorForTask (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/workspace/src/tasks-runner/utils.js:135:22)
at getCustomHasher (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/workspace/src/tasks-runner/utils.js:140:25)
at TasksSchedule.<anonymous> (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/workspace/src/tasks-runner/tasks-schedule.js:114:62)
at Generator.next (<anonymous>)
at /Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/tslib/tslib.js:117:75
at new Promise (<anonymous>)
at __awaiter (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/tslib/tslib.js:113:16)
at TasksSchedule.hashTask (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/workspace/src/tasks-runner/tasks-schedule.js:113:38)
at TasksSchedule.<anonymous> (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/workspace/src/tasks-runner/tasks-schedule.js:58:24)
Unexpected error:
Error: Unable to load hasher for task "api:serve"
at getCustomHasher (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/workspace/src/tasks-runner/utils.js:145:15)
at TasksSchedule.<anonymous> (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/workspace/src/tasks-runner/tasks-schedule.js:114:62)
at Generator.next (<anonymous>)
at /Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/tslib/tslib.js:117:75
at new Promise (<anonymous>)
at __awaiter (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/tslib/tslib.js:113:16)
at TasksSchedule.hashTask (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/workspace/src/tasks-runner/tasks-schedule.js:113:38)
at TasksSchedule.<anonymous> (/Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/@nrwl/workspace/src/tasks-runner/tasks-schedule.js:58:24)
at Generator.next (<anonymous>)
at /Users/dariantvirgiesiswadie/Documents/pribadi/shirt-shop/node_modules/tslib/tslib.js:117:75
Run Code Online (Sandbox Code Playgroud)
我严格遵循指南,一对一,相同的名字和一切。所以我想问题出在我的本地机器(?)上,我运行带有 M1 芯片的 macOS 12.2.1。或者也许这些指南使用了一些旧版本的nx(?)并且同时发生了一些变化?
因此,如果有人能给我一些线索,我将非常感激。谢谢
编辑 :
我尝试从他们的网站上关注官方 Nest with NX演示。当我尝试时仍然遇到同样的错误nx serve api
好吧,经过一番挖掘,它看起来像是最新(2022 年 3 月 4 日)nx 版本上的某种错误。请参阅nrwl 官方仓库上的github 问题。
根据那里的评论,要解决该问题,只需替换以下执行器:
"executor": "@nrwl/node:execute" -> "executor": "@nrwl/node:node"
"executor": "@nrwl/node:build" -> "executor": "@nrwl/node:webpack"
Run Code Online (Sandbox Code Playgroud)
这也解决了我的问题。