更新到 Angular 6 后,ng new 停止工作 [英] ng new has stopped working after updating to Angular 6

查看:29
本文介绍了更新到 Angular 6 后,ng new 停止工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

今天,我将我的 angular cli 更新到最新版本,但遇到一个错误,阻止我创建新的 Angular 项目.以下是我在执行 ng new app-name 后得到的错误日志:

Today, I updated my angular cli to the latest version and encountered an error that stops me from creating a new Angular project. Following is the error log that I get after executing ng new app-name :

Error: Schematic "ng-new" not found in collection "@schematics/angular".
    at SchematicEngine.createSchematic (C:\Users\xyz\node_modules\@angular\cli\node_modules\@angular-devkit\schematics\src\engine\engine.js:155:23)
    at CollectionImpl.createSchematic (C:\Users\xyz\node_modules\@angular\cli\node_modules\@angular-devkit\schematics\src\engine\collection.js:12:29)
    at NodeWorkflow.execute (C:\Users\xyz\node_modules\@angular\cli\node_modules\@angular-devkit\schematics\tools\workflow\node-workflow.js:70:38)
    at Promise (C:\Users\xyz\node_modules\@angular\cli\models\schematic-command.js:141:22)
    at new Promise (<anonymous>)
    at NewCommand.runSchematic (C:\Users\xyz\node_modules\@angular\cli\models\schematic-command.js:140:16)
    at NewCommand.<anonymous> (C:\Users\xyz\node_modules\@angular\cli\commands\new.js:77:25)
    at Generator.next (<anonymous>)
    at C:\Users\xyz\node_modules\@angular\cli\commands\new.js:7:71
    at new Promise (<anonymous>)

为了自己解决这个问题,我重新安装了 angular clinpm 两次以上.包的版本如下:

In order to solve the problem myself I have reinstalled angular cli as well as npm more than twice. The versions of packages are as follows:

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.6.0
@angular-devkit/core         0.6.0
@angular-devkit/schematics   0.6.0
@schematics/angular          0.6.0
@schematics/update           0.6.0
rxjs                         6.1.0
Angular Cli                  6.0.0
Node                         8.11.1
npm                          5.6.0

任何帮助将不胜感激.

我从安装 angular 全局包的地方运行 ng new 并且我能够从那里创建一个应用程序.从其他任何地方运行它,会产生错误.

I ran ng new from the place where the angular global packages are installed and I am able to create an an application from there. Running it from anywhere else, produces error.

推荐答案

这发生在我身上,我以为是我报告的错误 这里,原来我的主目录中有一个名为 node_modules 的文件夹!

That happened to me, I thought that was a bug I reported it here, it turned out that I had a folder named node_modules on my home directory!

为了确保这与您运行以下命令的问题相同

To make sure this is the same issue with you run following commands

npm ls -g @schematics/angular
npm ls @schematics/angular 

如果第二个命令的输出包含

If the output of second command contains

npm ERR! extraneous: @schematics/angular@0.6.0 C:\Users\User\node_modules\@angular\cli\node_modules\@schematics\angular

那么很可能您遇到了同样的问题,因为似乎有一个 node_modules 文件夹,其中包含 CLI 和本地安装的旧版本 @schematics/angular (C:\Users\User).删除它以解决此问题.

then most likely you have the same issue as it appears that there is a node_modules folder with both the CLI and an old version of @schematics/angular installed locally (C:\Users\User). Remove this to fix this issue.

请检查您是否也是这种情况.

Please check if it is the case for you too.

这篇关于更新到 Angular 6 后,ng new 停止工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆