原因1: 權(quán)限不足
用管理員身份打開終端再執(zhí)行命令。
原因2:緩存出錯
方法1
- 刪除C:\Users{賬戶}\下的.npmrc文件
- 刪除node_modules文件夾
- 執(zhí)行命令
npm cache clean -f
- 然后執(zhí)行安裝命令
方法2
- 刪除node_modules文件夾
- 執(zhí)行命令
npm cache clean -f
- 重啟電腦
- 再次執(zhí)行安裝命令
原因3:npm版本不夠
- 執(zhí)行
npm install npm@6.0.0
- 執(zhí)行安裝命令
原因4:網(wǎng)絡(luò)不穩(wěn)定
方法1
- 切換npm的下載源:
npm config set registry https://registry.npm.taobao.org
- 檢查當(dāng)前下載源:
npm config get registry
,如果結(jié)果是上面的這個淘寶源,就切換成功了 - 再次執(zhí)行安裝命令
方法2
- 在安裝命令后面加上
--registry https://registry.npm.taobao.org
附上官方源地址: registry https://registry.npmjs.org/文章來源:http://www.zghlxwxcb.cn/news/detail-422472.html
原因5: 殺毒軟件問題
方法1
關(guān)閉殺毒軟件,然后再運行幾次這個安裝命令文章來源地址http://www.zghlxwxcb.cn/news/detail-422472.html
方法2
- 找到該文件:
[NODE_HOME]/node_modules/npm/node_modules/graceful_fs/polyfills.js
- 在其中查找以下內(nèi)容:
if (process.platform === "win32") {
//或者是
if (platform === "win32") {
- 在找到的位置的下面,修改文件為
/*
說明:
在這個語句中,有一個超時,在出現(xiàn)錯誤時進(jìn)行重試。
問題是,在某些情況下,在超時之后,文件仍然被A/V鎖定。
解決方案是去掉超時并讓這個語句循環(huán)。對先前代碼的更改進(jìn)行了注釋:
*/
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)
}
其他:待補充
到了這里,關(guān)于npm install 報錯 Error: EPERM: operation not permitted, rename的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!