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

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

serve命令需要在Angular项目中运行,但是a 无法找到项目定义
691826 次浏览

我也得到了这个问题,并通过运行下面的命令来解决。

ng update @angular/cli --migrate-only --from=<WhateverVersionYouAreCurrentlyOn>

如。

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

在这里获取ref

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

同时确保如果你正在运行ng服务,你先停止它…

< p >解决。我在ubuntu 18.04.01 LTS上得到了同样的问题。没有上述选项工作,因为我正在使用NVM(节点版本管理器)解决方案是
创建项目前,使用命令< br > NVM使用10 < br > (我的节点版本是10.15.0,所以我使用“nvm使用10”)
它将显示输出-
现在使用节点v10.15.0 (npm v6.4.1) < br > 版本将根据不同的系统而有所不同。 然后创建新项目

我遇到了同样的错误。原因是新的angular cli更新使得angular-cli。Json是多余的,它被angular取代。json。我之前的Angular Cli版本是1.7.4,所以为了进行更改,我运行了下面的命令,它会为你完成转换:

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

你可以使用命令'ng update——all'来更新angular。这需要时间,但要确保所有组件都是最新的。

确保在项目中设置了新的angular版本配置。新的angular cli使用了angular。Json而不是。angular-cli。Json的配置。

遵循迁移向导

我也遇到过同样的问题,

我已经使用旧的angular-cli版本创建了新的angular项目(1.4.7) 然后我更新了angular-cli使用以下命令(不做下面的命令行更新)

  • npm uninstall -g @angular/cli
  • npm cache clean --force
  • npm install -g @angular/cli@latest

现在当我尝试ng serve时,我得到了和你一样的错误

Angular Cli Error: The serve command requires to be run in an Angular project, but a project definition could not be found

如何更新cli

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

如果您已经下载了一个项目,请在该项目中执行

npm安装

在包管理器控制台中运行该命令

PM> cd NameofApp

然后您可以尝试在那里运行命令。例如

PM > ng generate component Home

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

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

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

这样就能解决问题了。

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

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

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

最后,下面的命令为我解决了这个问题!

ng update --all --force

在我的例子中,我忘记改变我的目录,所以在运行命令后:

ng新的AngularProject

执行另一条命令:

cd AngularProject

ng serve为我工作。

我在Angular7中也遇到了同样的问题,因为在运行应用程序之前,我们需要进入根文件夹。进入应用程序的根文件夹并运行该命令。它非常适合我。

这个错误可能发生在我们在错误的目录。所以使用CD命令来更改目录。 从上面的注释中,并不能很明显地看出具体是哪个命令给出的 这个错误。这个答案是基于你运行ng serve的假设 在根文件夹/实际项目文件夹之外。这就是给出错误的原因 Cli命令需要conf &

. Build文件
These should be the steps:
npm install -g @angular/cli  //corrected from 'angular-cli'
ng new projectname
cd projectname
ng serve
open http://localhost:4200

我遇到了同样的问题,但我通过以下代码步骤解决了这个问题。

Step 1) npm install -g @angular/cli
Step 2) ng new my-angular-project
Step 3) cd my-angular-project
Step 4) ng serve --open

正如乌斯曼所说,我第一次遇到了很多麻烦,我是在跟随一个教程。我没有将我的目录设置为项目目录,因此得到这个错误。

我用……解决了这个问题

  1. 将正确的根目录设置为我的项目cd myproject
  2. 编译应用程序——ng serve

就是这样。

当我试图更新到最新的nodenpm包时,它发生在我现有的项目中:

  1. 卸载全局:npm uninstall -g angular-cli
  2. 重置缓存:npm cache cleannpm cache verify(用于npm version > 5)
  3. 安装最新版本:npm install -g @angular/cli@latest

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

问题是缺少角度。json文件。

    ng update --all --force

在Angular 7+中测试

这解决了我的问题:

ng generate component nameComponent --module app.module

发生这种情况是因为我们在其他路径上执行了ng serve命令。这可以通过在我们的项目所在的路径上敲击ng serve或npm start命令来解决(取路径直到包含src,node_modules等的文件夹为止)。

F:\project\AngularDemo\AngularDemoapp> ng service

当您正在运行的项目不是一个角项目时发生此错误。 虽然你已经下载了一个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的版本不会有什么不同。 它会给出一个警告,但是你可以忽略这个警告

以上都试过了但对我来说,问题是

npm start

确保你已经使用以下命令创建了angular应用,然后在创建的项目文件夹中运行ng serve。

ng new Project_Name

我很傻,但需要留下评论,也许我可以为其他人省去一些麻烦。同样的信息也会发生多任务并有多个项目,因此一些项目嵌套在项目文件夹中,如projectFolder/subProject/projectOne,所以我在projectFolder/subProject中试图运行命令ng serve

确保你在正确的文件夹中,因为同样的错误将发生,如果你在错误的文件夹和conf和构建丢失!

发生在我没有安装角芯:

Angular CLI: 9.0.0-rc.0
Node: 11.12.0
OS: darwin x64
Angular: undefined
...

所以我跑了

npm i @angular/core

这就得到了ng -v

Angular CLI: 9.0.0-rc.0
Node: 11.12.0
OS: darwin x64
Angular: 8.2.13
... core

然后我就跑

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

删除node_modules

npm install
cd <project name>
ng serve

它成功了!

Angular Live Development Server正在监听localhost:4200,打开浏览器http://localhost:4200/ **ℹ" wdm ": Compiled 成功。< / p >

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

我使用的是ionciv1,在文件ionic.config.json中删除了angular类型键,它工作正常

例子:

  {
"name": "nombre",
"integrations": {
"cordova": {}
},
"type": "angular", // delete
"gulpStartupTasks": [
"sass",
"templatecache",
"ng_annotate",
"useref",
"watch"
],
"watchPatterns": [
"www/**/*",
"!www/lib/**/*"
],
"browsers": [
{
"platform": "android",
"browser": "crosswalk",
"version": "12.41.296.5"
}
],
"id": "0.1"
}

解决了

     {
"name": "nombre",
"integrations": {
"cordova": {}
},
"gulpStartupTasks": [
"sass",
"templatecache",
"ng_annotate",
"useref",
"watch"
],
"watchPatterns": [
"www/**/*",
"!www/lib/**/*"
],
"browsers": [
{
"platform": "android",
"browser": "crosswalk",
"version": "12.41.296.5"
}
],
"id": "0.1"
}

重新安装应用程序比更新或编辑一些NPM无法识别的配置要好得多,因为配置缺失或我们不确定哪里出了问题。

我选择@Tinu解决方案是工作

步骤1)npm install -g @angular/cli

步骤2)ng新的my- angle项目

步骤3)cd my- angle -project

第四步:上菜——打开

只是备份了我们当前的源代码,并把它放回要创建的新angular项目中。

我在VS Code中也遇到了同样的问题,结果发现启用Angular图标检测可以解决这个问题

切换到你的app文件夹,再次运行generate命令:

enter image description here

此错误通常可以追溯到对全局或本地CLI运行时的更新。要检查这是否是问题所在,我们需要检查package.json文件。在那里,我们应该寻找@angular / cli依赖项。这应该指明用于创建项目的CLI版本。让我们记下这个值,因为我们稍后需要使用它来迁移我们的项目。

我们现在应该通过在终端窗口上输入以下命令来与当前的CLI运行时进行比较。

ng v

output of ng v

如果你得到错误一个未处理的异常发生:ENOENT:没有这样 文件或目录,scandir ` ~/your-app/node_modules ` ,那么你忘记了 npm install

控制台应该显示当前的CLI版本。如果版本不同,我们需要通过运行下面的命令将项目迁移到新的CLI版本。注意,版本参数应该设置为@angular / cli设置的值。

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

我们现在应该看一下我们的项目,应该注意到package.json文件中CLI依赖版本的变化。同样取决于你的CLI版本,.angular-cli.json文件将被删除,并创建一个新的angular.json文件。这是新CLI正在寻找的项目文件,因此是没有找到项目的错误的来源。通过添加这个文件,我们应该能够重新回到运行项目的轨道上。

我们应该能够输入以下命令,项目应该可以正常加载。

ng server

感谢ozkary

甚至ng update --all --force也不能工作?

它可能只是当你从.angular-cli.json(例如Angular 4)已被使用到具有angular.json的新版本之一时执行Angular升级。在这种情况下,你可能需要删除.angular-cli.json并替换为等效的元数据angular.json。在此之后,您将能够从一个命令或一步一步地执行更新。

这个项目不使用angular cli,而是直接使用webpack。使用实例开始执行该命令

npm开始

任何问题在你的角度。Jason文件可能导致此错误。如果文件在你的目录中丢失了或者出现了错误。

它总是给我同样的错误。我尝试了本页上的所有命令,但没有任何效果。我把电脑关机又开机。这对我很管用。

它发生在我身上,我试图在一个用Ruby on Rails创建的项目中执行ng服务命令。换句话说,我必须为Ruby on Rails运行rails - s命令。 我很困惑,因为Angular是内置在Ruby on Rails中的,所以我必须运行rails - s命令来启动我的项目的本地服务器,而且它工作起来没有问题

尝试——比;NPX ng serve

我在运行ng serve时也遇到了同样的错误,我在运行npx ng serve时修正了它

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

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

它也有

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

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

我也有同样的错误。所以,我首先去到根文件夹(文件夹包含angular。Json文件)然后

run "npm install" command(creating node modules),
then run "npm audit fix --force"
and then run "ng build",(building project)
and "ng serve"  (runnning project)

这3个命令帮助了我 NPM install——force NPM审计修复——强制 npm开始< / p >

我犯了一个错误,在Angular应用程序的父目录下运行ng server, OP得到了答案,但如果有人正在搜索答案,可能也想cd到应用程序目录中。

只要在vs code中找到你的项目名称,右键单击该项目名称,你会发现“在集成终端中打开”;在那里你输入-ng发球-这是如何帮助我,并解决了我的问题以及。这是因为错误的路径!