当运行终端命令ng server或ng serve——live-reload=true时,我得到了这个问题:

serve命令需要在Angular项目中运行,但是 找不到项目定义。


当前回答

我建议确认一下你是否在项目目录中。

其他回答

当你试图在另一个文件夹而不是Angular应用程序的根文件夹上运行Angular命令“ng s”或“ng serve”时,就会发生这种情况。

也可以使用以下命令升级Angular:

ng update @angular/cli --migrate-only --from=1.7.4

这样就能解决问题了。

确保您在应用程序根文件夹中运行该命令。

当您正在运行的项目不是angular项目时,会发生此错误。 虽然你已经下载了一个angular项目,但还没有安装所有的依赖项,这就是为什么ng serve命令对你不可用的原因。

只需导航到存储项目的路径并使用该命令

npm install

(注意- Node.js应该安装在你的系统中,如果你使用的是Angular 2或更高版本,在你运行这个命令之前,Angular cli也应该安装在你的系统中。 检查系统中是否安装了node.js 1)打开cmd(任何path- as node都应该在你的系统中全局安装) 2)使用命令

node -v
npm -v

获取节点和NPM版本)

还有一件重要的事情: 如果系统中安装的版本高于项目所需的版本,那么angular cli的版本不会有什么不同。 它会给出一个警告,但你可以忽略这个警告。

请检查您是否在项目文件夹中,然后再次尝试ng serve命令

我得到了同样的错误,因为我尝试ng服务命令在我的项目之外

例如:: 假设你有一个名为“电子商务”的项目,遍历到文件夹中,并尝试命令ng serve 打开终端 cd电子商务 ng服务

我从一个主题示例项目基础开始。这是angular.json

 "projects": {
    "<project name>": {
      "projectType": "application",
      "schematics": {
        "@schematics/angular:component": {
    ...

它也有

 "defaultProject": "<project name>",
  "cli": {
    "analytics": false
  }

在Angular 13中,将项目名与此匹配解决了我的问题。