错误:试图用ngcc备份文件覆盖<package_path>.__ivy_ngcc_bak,这是不允许的。

11

我从Angular 8升级到了9,并按照这里的所有步骤启用了Ivy。当我运行npm install时,我的一些软件包会抛出以下错误:

Tried to overwrite <package_path>.__ivy_ngcc_bak with an ngcc back up file, which is disallowed

这意味着什么,为什么会发生这种情况?我很难找到任何相关信息。我已经安装了所有这些出现此错误的软件包的最新版本,但是当我运行npm install时仍然会出现错误。谢谢!

2个回答

4

这是关于ivy编译器的问题,从Angular 9开始成为默认编译器,(详细信息请查看问题描述)。您可以按照以下步骤禁用ivy编译器以避免此错误。

  • 进入tsconfig.json并找到angularCompilerOptions

  • 然后添加以下内容:

    "angularCompilerOptions": { "enableIvy": false }


1

当您拥有一个经过ivy编译的节点包并更新节点包文件时,可能会发生这种情况。

要解决此问题,请删除节点包的所有编译文件(例如,在<package_path>中)文件名或文件扩展名中带有__ivy_ngcc_的文件,然后重新启动Angular。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接