NPM正在删除旧包

时间:2016-12-27 11:17:32

标签: node.js npm react-native

每当我尝试将新软件包安装到我的项目中时,npm会随机删除一个旧软件包,然后抛出此错误:

npm ERR! Error: EPERM: operation not permitted, rename 'C:\wamp\www\react_projects\Nasss\node_modules\axios' -> 'C:\wamp\www\react_projects\Nasss\node_modules\.axios.DE
LETE'
npm ERR!     at moveAway (C:\Program Files\nodejs\node_modules\npm\lib\install\action\finalize.js:38:5)
npm ERR!     at destStatted (C:\Program Files\nodejs\node_modules\npm\lib\install\action\finalize.js:27:7)
npm ERR!     at FSReqWrap.oncomplete (fs.js:82:15)
npm ERR!
npm ERR! Error: EPERM: operation not permitted, rename 'C:\wamp\www\react_projects\Nasss\node_modules\axios' -> 'C:\wamp\www\react_projects\Nasss\node_modules\.axios.DE
LETE'
npm ERR!     at Error (native)
npm ERR!  { [Error: EPERM: operation not permitted, rename 'C:\wamp\www\react_projects\Nasss\node_modules\axios' -> 'C:\wamp\www\react_projects\Nasss\node_modules\.axio
s.DELETE'] parent: 'Nasss' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! Please include the following file with any support request:
npm ERR!     C:\wamp\www\react_projects\Nasss\npm-debug.log

它是否与我安装的旧软件包存在某种冲突?

P.S:我已经将CMD作为管理员运行了。

1 个答案:

答案 0 :(得分:0)

这似乎是一个奇怪的权限问题。

看起来npm无法将目录重命名为其他名称,如果新版本无法安装,可能是为备份保留的旧版本模块。

您确定在"Program Files\nodejs\node_modules" 所有子目录中拥有相同的权限吗?对于现有子目录,您可能拥有与新子目录和/或父node_modules不同的权限。

在Unix / Linux上我会用chmodchown在一行中修复它,但对于Windows,你必须浏览目录并检查权限。

O或许您需要以管理员身份运行以全局更新/安装模块。这取决于您的权限和配置。