Angular-CLI ng new:“错误:EPERM:不允许操作......”

时间:2017-03-23 19:22:53

标签: angular angular-cli

我正在尝试使用Angular-CLI安装新的Angular2应用,但仍然遇到以下问题:

ng new payment-calc-app

在“通过npm安装工具包”后,我收到以下错误代码:

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules\chokidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm ERR! path C:\Users\jweston\Documents\Apps\payment-calc-app\node_modules\.staging\rxjs-ccea9159
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall rename
npm ERR! Error: EPERM: operation not permitted, rename 'C:\Users\jweston\Documents\Apps\payment-calc-app\node_modules\.staging\rxjs-ccea9159' -> 'C:\Users\jweston\Documents\Apps\payment-calc-app\node_modules\rxjs'
npm ERR!     at destStatted (C:\Users\jweston\AppData\Roaming\npm\node_modules\npm\lib\install\action\finalize.js:29:7)
npm ERR!     at C:\Users\jweston\AppData\Roaming\npm\node_modules\npm\node_modules\graceful-fs\polyfills.js:284:29
npm ERR!     at FSReqWrap.oncomplete (fs.js:123:15)
npm ERR!
npm ERR! Error: EPERM: operation not permitted, rename 'C:\Users\jweston\Documents\Apps\payment-calc-app\node_modules\.staging\rxjs-ccea9159' -> 'C:\Users\jweston\Documents\Apps\payment-calc-app\node_modules\rxjs'
npm ERR!     at Error (native)
npm ERR!  { Error: EPERM: operation not permitted, rename 'C:\Users\jweston\Documents\Apps\payment-calc-app\node_modules\.staging\rxjs-ccea9159' -> 'C:\Users\jweston\Documents\Apps\payment-calc-app\node_modules\rxjs'
npm ERR!     at destStatted (C:\Users\jweston\AppData\Roaming\npm\node_modules\npm\lib\install\action\finalize.js:29:7)
npm ERR!     at C:\Users\jweston\AppData\Roaming\npm\node_modules\npm\node_modules\graceful-fs\polyfills.js:284:29
npm ERR!     at FSReqWrap.oncomplete (fs.js:123:15)
npm ERR!
npm ERR! Error: EPERM: operation not permitted, rename 'C:\Users\jweston\Documents\Apps\payment-calc-app\node_modules\.staging\rxjs-ccea9159' -> 'C:\Users\jweston\Documents\Apps\payment-calc-app\node_modules\rxjs'
npm ERR!     at Error (native) parent: 'payment-calc-app' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\jweston\AppData\Roaming\npm-cache\_logs\2017-03-23T19_17_36_190Z-debug.log

Package install failed, see above.

我已尝试npm clean cache并以管理员身份运行命令提示符(我在Windows上)无济于事。

奇怪的是,当我尝试删除安装失败的文件夹时,Windows阻止我删除它们,说我需要成为管理员来删除它们,即使我是管理员。我需要进入每个单独的文件夹并一次删除一个单独的文件。

10 个答案:

答案 0 :(得分:6)

  • 使用命令: npm install -g @angular/cli --no-optional
  • 关闭当前角项目文件夹(在本例中为 payment-calc-app
  • 提供父文件夹阅读&写权限&存档权限(右键单击父文件夹&赋予文件夹和子项权限 文件夹)
    • 以管理员模式打开NodeJs命令提示符
    • 运行命令 ng new payment-calc-app

答案 1 :(得分:5)

在我的情况下问题是我有另一个命令提示符运行'ng serve',我停止了进程并且创建成功完成

答案 2 :(得分:1)

我遇到了同样的问题,对我来说有效的解决方案是以管理员身份运行IntelliJ

答案 3 :(得分:0)

亲爱的角度2编码器为生存 - 这个错误是屁股的痛苦,没有解决与npm缓存清理,或重启或其他我已知的方法... 只需卸载以前的节点版本并安装新的当前版本@ https://nodejs.org/en/download/current/ - 这解决了我机器上的错误..祝你好运!

答案 4 :(得分:0)

我有同样的问题。我通过回退到NodeJS LTS解决了它。对我来说,当前问题是11.7。我梳理了网络,发现Current并非一直都在NPM上进行测试,因此从某种意义上说,Current是该团队在野外测试NodeJS的方式。祝所有遇到此问题的人都好运。

答案 5 :(得分:0)

我发现这可能是由于各种原因,其中一个可能是节点版本。但是大多数情况下,甚至就我而言,如@ maury844所指出的,这都是由于ng serve在另一个命令提示符中并行运行。在appdata / roaming中删除npm和npm-cache文件夹也可能与此问题有关。 尝试所有这些。

答案 6 :(得分:0)

如果您在尝试ng build --prod时遇到此类错误

关闭VS Code,然后在文件资源管理器中转到dist文件夹(与src文件夹相同)...手动将其删除

然后重试

答案 7 :(得分:0)

我知道OP指定他们以管理员身份运行它,但是对我来说,解决了该问题。只需以管理员身份运行我的构建即可。

答案 8 :(得分:0)

在使角度cli工作时,我遇到了同样的麻烦。我尝试了在stackoverflow和其他介质上列出的几乎所有可能的解决方案,但都失败了。

对我来说,有效的方法是在计算机上运行防病毒安全扫描。恶意程序将C:// users // AppData / roaming / npm中的node_modules设置为只读模式。删除该病毒后,我再次安装了npm和angular cli,它终于起作用了。

答案 9 :(得分:0)

这是一个权限问题。所以对于窗口 10

  • 以管理员身份打开 CMD(最重要)
  • npm uninstall -g @angular/cli
  • npm 缓存清理
  • npm install -g @angular/cli@latest