Angular CLI 版本与 Angular 版本不兼容
Angular CLI version is not compatible with Angular version
我的 angular 项目 运行 很好,但是当我将 Angular 更新到版本 9 时,它开始给我这个错误:
This version of CLI is only compatible with Angular versions 0.0.0 || ^10.0.0-beta || >=10.0.0 <11.0.0,
but Angular version 9.1.1 was found instead.
我更新了 CLI,但它仍然给我同样的错误。
我的 CLI 版本是:
Angular CLI: 10.0.0-next.0
Node: 12.13.0
OS: win32 x64
Angular: 9.1.1
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Ivy Workspace: Yes
问题
您安装的 CLI 版本不符合您的 Angular 版本的要求,如错误所述:
This version of CLI is only compatible with Angular versions 0.0.0 || ^10.0.0-beta || >=10.0.0 <11.0.0
修复
卸载 @angular/cli
并确保安装 9.1.x
版本范围内的 @angular/cli
,以便它符合 Angular 9.1 版本的要求。
Angular: 9.1.1
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
更新Angular项目
要在您的应用程序中卸载并重新安装 @angular/cli
包,请导航到项目的根文件夹,然后 运行 以下内容:
# uninstall previous version
npm uninstall @angular/cli --save-dev
# install 9.1.x specific version
npm install @angular/cli@~9.1.0 --save-dev
The --save-dev
parameter will update your package.json
devDependencies
更新全局依赖
如果你全局安装了angular/cli
,需要在命令末尾加上-g
并省略--save-dev
参数:
# uninstall previous globally installed version
npm uninstall @angular/cli -g
# install 9.1.x specific version globally
npm install @angular/cli@~9.1.0 -g
If you are not sure what global version is installed (or if you have installed @angular/cli
globally) you can run the following command to list your globally installed NPM packages:
npm ls -g --depth=0
如果需要,您可以更新项目。
在根项目文件夹中写入:
ng update @angular/core @angular/cli
这将使用安装在“node_modules”文件夹中的模块版本升级 package.json 文件。
有具体的更新说明,具体取决于 from/to 您要更新的版本。为此,请访问 Angular update guide。
访问https://update.angular.io/
将 angular 版本的详细信息输入目标 angular 版本,这将更新 cli 以及项目文件。
只需将 cmd 复制粘贴到终端即可。
不过,如果您看到一些奇怪的错误,请检查 node_modules 文件夹是否存在,如果存在则将其删除,然后 运行 - npm install
这可能仅在您拥有 package.json 文件时才有效。
如果仍然出现错误,请查看错误内容,从 package.json 中删除错误行,如果有效再试一次。
我的 angular 项目 运行 很好,但是当我将 Angular 更新到版本 9 时,它开始给我这个错误:
This version of CLI is only compatible with Angular versions 0.0.0 || ^10.0.0-beta || >=10.0.0 <11.0.0,
but Angular version 9.1.1 was found instead.
我更新了 CLI,但它仍然给我同样的错误。
我的 CLI 版本是:
Angular CLI: 10.0.0-next.0
Node: 12.13.0
OS: win32 x64
Angular: 9.1.1
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Ivy Workspace: Yes
问题
您安装的 CLI 版本不符合您的 Angular 版本的要求,如错误所述:
This version of CLI is only compatible with Angular versions 0.0.0 || ^10.0.0-beta || >=10.0.0 <11.0.0
修复
卸载 @angular/cli
并确保安装 9.1.x
版本范围内的 @angular/cli
,以便它符合 Angular 9.1 版本的要求。
Angular: 9.1.1
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
更新Angular项目
要在您的应用程序中卸载并重新安装 @angular/cli
包,请导航到项目的根文件夹,然后 运行 以下内容:
# uninstall previous version
npm uninstall @angular/cli --save-dev
# install 9.1.x specific version
npm install @angular/cli@~9.1.0 --save-dev
The
--save-dev
parameter will update yourpackage.json
devDependencies
更新全局依赖
如果你全局安装了angular/cli
,需要在命令末尾加上-g
并省略--save-dev
参数:
# uninstall previous globally installed version
npm uninstall @angular/cli -g
# install 9.1.x specific version globally
npm install @angular/cli@~9.1.0 -g
If you are not sure what global version is installed (or if you have installed
@angular/cli
globally) you can run the following command to list your globally installed NPM packages:npm ls -g --depth=0
如果需要,您可以更新项目。
在根项目文件夹中写入:
ng update @angular/core @angular/cli
这将使用安装在“node_modules”文件夹中的模块版本升级 package.json 文件。
有具体的更新说明,具体取决于 from/to 您要更新的版本。为此,请访问 Angular update guide。
访问https://update.angular.io/ 将 angular 版本的详细信息输入目标 angular 版本,这将更新 cli 以及项目文件。 只需将 cmd 复制粘贴到终端即可。
不过,如果您看到一些奇怪的错误,请检查 node_modules 文件夹是否存在,如果存在则将其删除,然后 运行 - npm install 这可能仅在您拥有 package.json 文件时才有效。 如果仍然出现错误,请查看错误内容,从 package.json 中删除错误行,如果有效再试一次。