每当我进行更改时,我都会运行此命令来构建我的项目:
ng build --prod --aot=false --build-optimizer=false
这一直很有效,直到我今天犯了一个错误。 我偶然在 /src/app 文件夹下运行了 npm i --save-dev @angular-devkit/build-angular 。然后,我在该文件夹和项目根文件夹下运行 npm uninstall @angular-devkit/build-angular,并在根文件夹下运行 npm i --save-dev @angular-devkit/build-angular。
现在,当我尝试使用上面提供的第一个 ng build 命令构建项目时,我收到错误:未知参数:prod。
当我只运行 ng build 时,出现以下错误:
此版本的 CLI 仅与 Angular 版本 ^14.0.0 兼容, 但找到了 Angular 版本 6.1.10。
关于如何解决这个问题有什么想法吗?
出现第一个错误是因为选项
--prod
在 Angular 14 中被删除,并自版本 12 起已弃用,您可以通过将其替换为 --configuration "production"
来修复它
查看版本 14 变更日志中的重大更改: https://github.com/angular/angular-cli/blob/main/CHANGELOG.md#writing-changes-2
你的第二个错误是一种自我解释,你的 CLI 版本对于使用的 Angular 版本来说太新了。您可以尝试升级其中一个或降级另一个。
如果升级 Angular 版本,您可能会遇到项目中其他依赖项的问题,并且可能还需要升级它们。
测试此命令是否构建
ng build --configuration production --aot
而不是 ng build --prod
.
ng build --configuration production --aot
将 package.json 中的版本更改回旧值,现在可以正常工作了:
"@angular-devkit/build-angular": "~0.8.0",
"@angular/cli": "~6.2.9",