当我执行npm install
我得到这个错误
npm ERR!错误:EPERM:不允许操作,请重命名C:\ projects ****** \ node_modules \ react-async-script'->'C:\ projects ******* \ node_modules.react-async-script 。删除'
- 我以管理员身份运行cmd
- 我跑
npm cache clean
前 - 我确保所有其他应用程序都没有与
node_modules
打开有关的内容
当我执行npm install
我得到这个错误
npm ERR!错误:EPERM:不允许操作,请重命名C:\ projects ****** \ node_modules \ react-async-script'->'C:\ projects ******* \ node_modules.react-async-script 。删除'
npm cache clean
前node_modules
打开有关的内容 Answers:
以我的情况,这有所帮助。在继续执行这些命令之前,请关闭所有VS Code实例。
清理缓存
npm cache clean --force
以管理员身份全局安装最新版本的npm:
npm install -g npm@latest --force
清理缓存
npm cache clean --force
尝试再次安装组件。
希望这能解决您的问题。如果没有,您可以暂时禁用防病毒程序,然后重试。
npm run watch
。之后,以我为例,正确的模块链接已在新的app.js文件中更新。
不是package.json
,但是由于某种原因,我node_modules/
已变成只读。重置,解决了这个问题。
1.
关闭VS,2.
删除node_modules
从FileExplorer 3.
重新启动我的电脑4.
运行npm install --force
。然后终于成功了。
当尝试使用强制选项进行npm install来获取远程资源时,即使磁盘上存在本地副本,我也能正常工作。尝试跑步
npm install --force
已更新 对于我的一些同事而言,此解决方案无效。但是我们尝试使用yarn而不是npm。它可以正常工作(更快),并且始终无任何问题
yarn install [package-name]
如果您想避免使用该--force
选项(通常是更好的方法),建议您停止运行该项目,因为这通常是在我所看到的几乎90%的情况下锁定文件的主要原因。
1-在Angular中停止ng s
和在React中停止 npm start
通常可以解决此问题,因为如果开发服务器正在运行项目,因为它锁定了一些文件,则通常会发生此错误,然后npm无法更新它们,从而引发此错误
2- 如果上述方法不起作用,请尝试关闭已打开工作空间的代码编辑器(也许它正在锁定某些文件或其他内容)
因此,请尝试关闭代码编辑器并运行:
npm install
3- 如果仍然无法正常工作,那么也许您可以尝试--force
选择
npm install --force
我遇到了同样的错误,根据https://github.com/Medium/phantomjs/issues/19,它可能是由您的防病毒软件引起的。我在安装期间禁用了我的我,并以admin身份在cmd上执行了“ npm install”,并且可以正常工作。希望这可以帮助。
对我来说,我只是关闭了代码编辑器(VS Code),然后运行相同的命令。这就为我解决了这个问题。
我得到了同样的东西。我在任何地方都找不到,但是让我震惊的是我们的VM倾向于将文件更改为只读状态。因此,我打开了package.json
的文件属性,并Read-only
在“常规”标签中取消了选择。
脚步
package.json
文件。这是由防病毒引起的典型错误。对于像我这样的情况,我无法禁用A / V(公司政策),这是一种解决方法。
您必须更改polyfills.js
内部Npm
包装:
[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)
}
我仅在Windows中多次遇到过此问题,通常按顺序尝试这些问题。
npm install --force
node_modules/
通常,尝试执行npm install
其中一个步骤即可解决该问题。
尝试将文件重命名为另一个已经存在的文件名可能会导致EPERM
Windows错误。
我用元数据标志重新安装了窗口磁盘,并立即提供了帮助: https //devblogs.microsoft.com/commandline/chmod-chown-wsl-improvements/
之后,不再需要对npm命令使用sudo,因为元数据可以检查Windows和Linux文件/目录的权限。
对于某些用户来说,AppRoot \ npm文件夹可能是个问题。有时,AppRoot文件夹被标记为网络共享,因此Antivirus阻止了这些内容。请点击以下链接以获取完整的解决方案。
https://alastaircrabtree.com/fixing-intermittant-eperm-operation-not-permitted-on-npm-install/
我希望这有帮助。
以管理员身份打开命令提示符,并导航到项目位置,然后运行npm install。它为我工作。
我的回答是先做npm cache clean --force
。然后运行npm install -g npm@5.3.0
以安装npm 5.3.0版本。对我来说,这个npm版本可以正常工作。
我在Windows 10中遇到了同样的问题。请按照以下步骤操作:
以管理员身份打开cmd。
安装更新的npm软件包。
npm我-g npm
npm init-是
就我而言,typescript.disableAutomaticTypeAcquisition
在Visual Studio Code中设置true
似乎有所帮助。
我关闭了VS,删除了node_modules文件夹。
然后运行:
npm i -D -E clean-webpack-plugin@3.0.0 css-
loader@3.4.2 html-webpack-plugin@3.2.0 mini-css-
extract-plugin@0.9.0 ts-loader@6.2.1 typescript@3.7.5
webpack@4.41.5 webpack-cli@3.3.10
一旦完成运行,就必须将属性更改为不只对node_modules文件夹只读。
然后运行:
npm i @microsoft/signalr @types/node
然后在VS中打开备份该项目,然后package.json与依赖项看起来正确。
与其他人一样,谈论对node_modules文件夹的只读操作并关闭VS以运行npm install over。