使用NX生成Angular库组件时遇--project不在schema中的问题求助
解决Nx Angular组件生成器报错'project' is not found in schema
先明确核心误区:
全局nx --help仅显示通用命令选项,每个生成器的参数是独立定义的,别拿全局帮助信息当组件生成器的参数参考。先执行以下命令查看该生成器的真实可用选项:
nx g @nx/angular:component --help
排查与修复步骤:
- 清理Nx缓存:缓存损坏会导致schema识别异常,执行命令重置缓存后重试:
nx reset - 使用项目本地Nx执行:全局安装的Nx版本大概率和项目依赖的版本不匹配,参数兼容性问题是常见诱因,改用项目本地的Nx执行命令:
npx nx g @nx/angular:component main-menu/main-menu --project=ingredient-manager - 明确指定生成路径:如果Nx解析组件路径时无法关联到目标项目,直接把路径指向库的源码目录,减少解析歧义:
nx g @nx/angular:component libs/ingredient-manager/src/lib/main-menu/main-menu --project=ingredient-manager - 核对项目配置:检查
nx.json(旧版Nx为workspace.json),确认ingredient-manager项目的type字段为library,且architect节点下配置了build等必要目标,确保项目被Nx正确识别。 - 降级兼容方案:如果确认当前版本的组件生成器不支持
--project参数(比如旧版Nx),改用--module指定库的根模块路径:nx g @nx/angular:component main-menu/main-menu --module=libs/ingredient-manager/src/lib/ingredient-manager.module.ts
内容的提问来源于stack exchange,提问作者Optiq
相关产品推荐
相关产品推荐

