当我执行npm install时,我得到这个错误

npm犯错!C:\projects*******\node_modules.react-async-script. delete

我以管理员身份运行cmd 我之前运行过npm cache clean 我确保所有其他应用程序没有打开任何与node_modules相关的东西


当前回答

以超级管理员身份运行命令对我来说很有效。关闭正在使用的编辑器后重试。

其他回答

正如Martin Kearn在评论中指出的,关闭Visual Studio为我解决了这些npm权限问题。显然,VS有时会锁定node_modules中的文件。

如果你想避免——force选项(这总是一个更好的方法),我建议确保你已经停止运行项目,因为这通常是锁定文件的主要原因,在我所见过的90%的情况下

我建议按照以下顺序:

1-在Angular中停止ng,在React中停止npm start通常可以解决这个问题,因为通常这个错误发生在开发服务器正在运行项目时,因为它锁定了一些文件,然后npm无法更新它们,从而抛出这个错误

2-如果上面没有工作,那么尝试关闭有工作空间打开的代码编辑器(可能它锁定了一些文件或其他东西)

所以尝试关闭代码编辑器并运行:

npm install

3-如果还是不行,也许你可以试试——force选项

npm install --force

经过多次尝试,我用以下步骤解决了这个问题:

 0. Run `cmd` or `powershell` as admin

NPM Clean cache——force 删除%AppData%/npm-cache/的内部 删除%临时% 删除导致错误的npm模块。对我来说是iconv。所以删除了iconv和iconv-lite 当我再次构建时,我得到了失败的原因作为应用程序构建器内的病毒。我在节点模块上运行了windows防御程序并删除了病毒。然后,重新构建。 这一次我成功了。

NPM在scandir方面对我来说是失败的:

npm install -g webpack

...这可能是由于NPM试图“修改”文件,这些文件可能被其他进程锁定,正如这里提到的和其他一些github线程。在强制清理缓存、验证缓存、以管理员身份运行、禁用AV等之后,对我来说实际有效的解决方案是关闭任何可能锁定文件的东西(即重新启动我的计算机)。

我希望这能帮助那些正在挣扎的人。

对于一些人来说,AppRoot\npm文件夹可能是一个问题。有时AppRoot文件夹被标记为网络共享,因此反病毒阻止的东西。按照下面的链接完整的解决方案。

https://alastaircrabtree.com/fixing-intermittant-eperm-operation-not-permitted-on-npm-install/

我希望这能有所帮助。