当我执行npm install时,我得到这个错误
npm犯错!C:\projects*******\node_modules.react-async-script. delete
我以管理员身份运行cmd 我之前运行过npm cache clean 我确保所有其他应用程序没有打开任何与node_modules相关的东西
当我执行npm install时,我得到这个错误
npm犯错!C:\projects*******\node_modules.react-async-script. delete
我以管理员身份运行cmd 我之前运行过npm cache clean 我确保所有其他应用程序没有打开任何与node_modules相关的东西
当前回答
我带着同样的错误来到这里,循着这里所有的答案,没有一个能解决它。我开始检查我的包裹。Json删除所有可疑的包。去掉这个不必要的就解决了我们的问题。:“npm ^ 8.3.2”
其他回答
NPM在scandir方面对我来说是失败的:
npm install -g webpack
...这可能是由于NPM试图“修改”文件,这些文件可能被其他进程锁定,正如这里提到的和其他一些github线程。在强制清理缓存、验证缓存、以管理员身份运行、禁用AV等之后,对我来说实际有效的解决方案是关闭任何可能锁定文件的东西(即重新启动我的计算机)。
我希望这能帮助那些正在挣扎的人。
这是反病毒软件导致的典型错误。对于像我这样的情况,有一个变通办法,我不能禁用a /V(公司政策)。
你必须改变Npm包中的polyfills.js:
[NODE_HOME] / node_modules / npm / node_modules / graceful_fs / polyfills.js
看看这句话:
if (process.platform === "win32") {
在此语句中,有一个超时,在发生错误时进行重试。问题是在某些情况下,超时后,文件仍然被A/V锁定。解决方案是取出超时并让该语句循环。对前面代码的更改注释如下:
if (platform === "win32") {
fs.rename = (function (fs$rename) { return function (from, to, cb) {
var start = Date.now()
var backoff = 0;
fs$rename(from, to, function CB (er) {
if (er
&& (er.code === "EACCES" || er.code === "EPERM")
/*&& Date.now() - start < 60000*/) {
console.log("Retrying rename file: " + from + " <> " + to)
fs$rename(from, to, CB);
/*setTimeout(function() {
fs.stat(to, function (stater, st) {
if (stater && stater.code === "ENOENT")
fs$rename(from, to, CB);
else
cb(er)
})
}, backoff)*/
if (backoff < 100)
backoff += 10;
return;
}
if (cb) cb(er)
})
}})(fs.rename)
}
在我的情况下,这是事实,我实际上移动的项目到垃圾,从git重新克隆的项目,但似乎终端仍然指向文件夹移动到垃圾。我只需要cd返回到新克隆的项目,一切都工作得很好。
这可能是由于您的杀毒软件。如果你不能禁用AV,那么你可以尝试在节点安装到APPDATA目录时修改你的NPM全局安装位置,该目录由AV引擎主动监控。尝试执行以下命令-
npm配置你的自定义位置 npm设置缓存“YOUR CUSTOM LOCATION”
删除node_modules目录并重新安装包。
如果你在PHP Storm上有问题:
关闭终端选项卡 打开一个新的终端选项卡