ng new 在更新到 Angular 6 后停止工作
ng new has stopped working after updating to Angular 6
今天,我将我的 angular cli 更新到最新版本,但遇到一个错误,使我无法创建新的 Angular 项目。以下是执行 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 cli和npm两次以上。包的版本如下:
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
如有任何帮助,我们将不胜感激。
编辑: I 运行 ng new 从安装 angular 全局包的地方和我可以从那里创建一个应用程序。 运行 它来自其他任何地方,产生错误。
我怀疑您对 Angular CLI 的升级不顺利。尝试卸载并重新安装:
npm uninstall @angular/cli -g
npm install @angular/cli -g
这发生在我身上,我认为这是一个错误,我报告了它 here,结果发现我的主目录中有一个名为 node_modules 的文件夹!
为了确保这与您的问题相同运行,请遵循命令
npm ls -g @schematics/angular
npm ls @schematics/angular
如果第二个命令的输出包含
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).删除它以解决此问题。
请检查您是否也是这种情况。
我尝试发布时也遇到了这个错误,ng new
我后来意识到这是由于发出 "npm install @angular/cli" 的结果,它在我工作的目录中创建了一个 node_modules 文件夹。
删除 "node_modules" 文件夹,然后使用 "ng new"
创建您的项目
Ps。使用 angular 6 升级,ng 团队必须指定您不能在任何地方只 运行 "npm install @angular/cli",而只能在新创建的项目中。我觉得这对angular
的新手有点不公平
希望对您有所帮助
尝试卸载并重新安装:
npm ls -g @schematics/angular
npm ls @schematics/angular
今天,我将我的 angular cli 更新到最新版本,但遇到一个错误,使我无法创建新的 Angular 项目。以下是执行 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 cli和npm两次以上。包的版本如下:
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
如有任何帮助,我们将不胜感激。
编辑: I 运行 ng new 从安装 angular 全局包的地方和我可以从那里创建一个应用程序。 运行 它来自其他任何地方,产生错误。
我怀疑您对 Angular CLI 的升级不顺利。尝试卸载并重新安装:
npm uninstall @angular/cli -g
npm install @angular/cli -g
这发生在我身上,我认为这是一个错误,我报告了它 here,结果发现我的主目录中有一个名为 node_modules 的文件夹!
为了确保这与您的问题相同运行,请遵循命令
npm ls -g @schematics/angular
npm ls @schematics/angular
如果第二个命令的输出包含
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).删除它以解决此问题。
请检查您是否也是这种情况。
我尝试发布时也遇到了这个错误,ng new
我后来意识到这是由于发出 "npm install @angular/cli" 的结果,它在我工作的目录中创建了一个 node_modules 文件夹。
删除 "node_modules" 文件夹,然后使用 "ng new"
创建您的项目Ps。使用 angular 6 升级,ng 团队必须指定您不能在任何地方只 运行 "npm install @angular/cli",而只能在新创建的项目中。我觉得这对angular
的新手有点不公平希望对您有所帮助
尝试卸载并重新安装: npm ls -g @schematics/angular npm ls @schematics/angular